<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "utf-8";

/* ======================================================
 * parts_sp.css
 * ------------------------------------------------------
 * @media only screen and (max-width: 767px)
 * - Common
 * - Element &gt;&gt;&gt; Heading
 * - Element &gt;&gt;&gt; Text
 * - Element &gt;&gt;&gt; List
 * - Element &gt;&gt;&gt; Link
 * - Element &gt;&gt;&gt; Image
 * - Element &gt;&gt;&gt; Video
 * - Element &gt;&gt;&gt; Form
 * - Element &gt;&gt;&gt; Other
 * - Layout &gt;&gt;&gt; Column
 * - Layout &gt;&gt;&gt; Table
 * - Layout &gt;&gt;&gt; Box
 * - Layout &gt;&gt;&gt; Other
 * - Component &gt;&gt;&gt; Navi
 * - Component &gt;&gt;&gt; Index
 * - Component &gt;&gt;&gt; Other
 * - Clearfix
 * Media Queries
====================================================== */

@media only screen and (max-width: 767px) {
  /* ------------------------------------------------------
   * Common
  ------------------------------------------------------ */
  /* ----- font ----- */
  .faq-layout .faq_trigger &gt; .faq_label &gt; .faq_icon,
  .faq-layout .faq_detail &gt; .faq_detail_inner &gt; .faq_icon {
    font-family: roboto;
  }
  
  /* ----- a ----- */
  a.block {
    display: block;
    color: #333;
  }
  
  /* ----- opacity ----- */
  
  /* ----- transition ----- */
  .navi-anchor .navi_inner &gt; li &gt; a::before {
    -webkit-transition: bottom .2s ease-out 0s;
    transition: bottom .2s ease-out 0s;
  }
  .tab-layout .tab_list &gt; li &gt; a::after,
  .tab-layout-v2 .tab_list &gt; li &gt; a::after {
    -webkit-transition: width .2s ease-out 0s;
    transition: width .2s ease-out 0s;
  }
  .search-box .search_form {
    -webkit-transition: border-color .2s ease-out 0s;
    transition: border-color .2s ease-out 0s;
  }
  .search-box .search_submit,
  .tab-layout .tab_list &gt; li &gt; a::before,
  .tab-layout-v2 .tab_list &gt; li &gt; a::before {
    -webkit-transition: background-color .2s ease-out 0s;
    transition: background-color .2s ease-out 0s;
  }
  [class*="heading-lv"] a.block .heading_title {
    -webkit-transition: color .2s ease-out 0s;
    transition: color .2s ease-out 0s;
  }
  .accordion-layout .accordion_trigger &gt; .accordion_label::before,
  .accordion-layout-v2 .accordion_list_trigger &gt; .accordion_list_label::before,
  .accordion-layout-v3 .accordion_trigger &gt; .accordion_label::before,
  .accordion-layout-v3 .accordion_trigger &gt; .accordion_label::after,
  .faq-layout .faq_trigger &gt; .faq_label::before,
  .faq-layout .faq_trigger &gt; .faq_label::after,
  .location-compo .location_table &gt; .location_table_head::before,
  .products-search-layout .search_heading::before {
    -webkit-transition: transform .2s ease-out 0s;
    transition: transform .2s ease-out 0s;
  }
  .officer-layout .officer_column_2::before,
  .officer-layout .officer_column_2::after {
    -webkit-transition: all .2s ease-out 0s;
    transition: all .2s ease-out 0s;
  }
  
  /* ----- sprite ----- */
  [class^="heading-lv"] a.block.a-blank .heading_title::after,
  [class^="heading-lv"] a.block.a-pdf .heading_title::after,
  .heading-lv1-v2 .heading_print &gt; a::before,
  a.link-inline[class*="a-"]::after,
  .link-text a[class*="a-"]::after,
  .link-button a[class*="a-"] &gt; .link_label::after,
  .link-button-v2 a[class*="a-"] &gt; .link_label::after,
  .link-button-v3 a[class*="a-"] &gt; .link_label::after,
  .link-button-v4 a[class*="a-"] &gt; .link_label::after,
  .index-layout &gt; a.block[class*="a-"] .index_caption::after,
  .index-layout &gt; .block .index_title .index_title_list &gt; .index_title_item &gt; a[class*="a-"]::after,
  .index-layout-v2 &gt; a.block.a-video .index_image::before,
  .index-layout-v3 &gt; a.block[class*="a-"] .index_title::after,
  .index-layout-v4 &gt; a.block[class*="a-"] .index_title::after,
  .index-layout-v5 &gt; a.block[class*="a-"] .index_title::after,
  .index-layout-v6 &gt; a.block[class*="a-"] .index_caption::after,
  .index-layout-v7 &gt; a.block[class*="a-"] .index_title::after,
  .index-layout-v8 &gt; a.block[class*="a-"] .index_caption::after,
  .index-layout-v9 &gt; .index_links &gt; li &gt; a[class*="a-"]::before,
  .products-index-layout .index_heading .index_title a[class*="a-"]::after,
  .news-compo a.block[class*="a-"]::after,
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow,
  .related-compo-v2 .related_inner .related_links_2 a.block[class*="a-"] .related_links_title::after,
  .location-compo .location_caption .location_company &gt; a[class*="a-"]::after,
  .location-compo .location_table .location_links &gt; li &gt; a[class*="a-"] &gt; .location_links_label::after,
  .location-compo .location_table .location_links &gt; li &gt; a.a-map::before,
  .library-item .library_table_data a .data_icon,
  .csr-news-compo .news_heading &gt; .news_heading_link &gt; li &gt; a.a-rss::before,
  .contact-layout .contact_button &gt; li &gt; a[class*="a-"]::before {
    display: inline-block;
    background-image: url(../img/cmn_sprite_ic01-r2x.png);
    background-repeat: no-repeat;
    background-size: 600px 600px;
    vertical-align: middle;
    content: "";
  }
  [class^="heading-lv"] a.block.a-blank .heading_title::after,
  a.link-inline.a-blank::after,
  .link-text a.a-blank::after,
  .link-button a.a-blank &gt; .link_label::after,
  .index-layout &gt; a.block.a-blank .index_caption::after,
  .index-layout &gt; .block .index_title .index_title_list &gt; .index_title_item &gt; a.a-blank::after,
  .index-layout-v3 &gt; a.block.a-blank .index_title::after,
  .index-layout-v4 &gt; a.block.a-blank .index_title::after,
  .index-layout-v5 &gt; a.block.a-blank .index_title::after,
  .index-layout-v6 &gt; a.block.a-blank .index_caption::after,
  .index-layout-v7 &gt; a.block.a-blank .index_title::after,
  .index-layout-v8 &gt; a.block.a-blank .index_caption::after,
  .index-layout-v9 &gt; .index_links &gt; li &gt; a.a-blank::before,
  .products-index-layout .index_heading .index_title a.a-blank::after,
  .news-compo a.block.a-blank::after,
  .related-compo-v2 .related_inner .related_links_2 a.block.a-blank .related_links_title::after,
  .location-compo .location_caption .location_company &gt; a.a-blank::after,
  .location-compo .location_table .location_links &gt; li &gt; a.a-blank &gt; .location_links_label::after,
  .contact-layout .contact_button &gt; li &gt; a.a-blank::before { width: 10px; height: 9px; background-position: 0px -100px; }
  .link-button-v2 a.a-blank &gt; .link_label::after,
  .link-button-v4 a.a-blank &gt; .link_label::after { width: 10px; height: 9px; background-position: -50px -100px; }
  .link-button-v3 a.a-blank &gt; .link_label::after { width: 10px; height: 9px; background-position: -100px -100px; }
  [class^="heading-lv"] a.block.a-pdf .heading_title::after,
  a.link-inline.a-pdf::after,
  .link-text a.a-pdf::after,
  .link-button a.a-pdf &gt; .link_label::after,
  .link-button-v2 a.a-pdf &gt; .link_label::after,
  .link-button-v3 a.a-pdf &gt; .link_label::after,
  .index-layout &gt; a.block.a-pdf .index_caption::after,
  .index-layout &gt; .block .index_title .index_title_list &gt; .index_title_item &gt; a.a-pdf::after,
  .index-layout-v3 &gt; a.block.a-pdf .index_title::after,
  .index-layout-v4 &gt; a.block.a-pdf .index_title::after,
  .index-layout-v5 &gt; a.block.a-pdf .index_title::after,
  .index-layout-v6 &gt; a.block.a-pdf .index_caption::after,
  .index-layout-v7 &gt; a.block.a-pdf .index_title::after,
  .index-layout-v8 &gt; a.block.a-pdf .index_caption::after,
  .index-layout-v9 &gt; .index_links &gt; li &gt; a.a-pdf::before,
  .news-compo a.block.a-pdf::after,
  .related-compo-v2 .related_inner .related_links_2 a.block.a-pdf .related_links_title::after,
  .contact-layout .contact_button &gt; li &gt; a.a-pdf::before { width: 14px; height: 14px; background-position: 0px -150px; }
  .link-button-v4 a.a-pdf &gt; .link_label::after { width: 14px; height: 14px; background-position: -50px -150px; }
  .library-item .library_table_data .a-pdf .data_icon { width: 28px; height: 28px; background-position: -100px -150px; }
  .library-item .library_table_data .a-play .data_icon { width: 28px; height: 28px; background-position: -150px -150px; }
  .library-item .library_table_data .a-excel .data_icon { width: 28px; height: 28px; background-position: -200px -150px; }
  .link-text a.a-excel::after { width: 16px; height: 16px; background-position: 0px -200px; }
  .link-text a.a-word::after { width: 16px; height: 16px; background-position: -50px -200px; }
  .link-text a.a-ppt::after { width: 16px; height: 16px; background-position: -100px -200px; }
  .link-text a.a-zip::after { width: 15px; height: 19px; background-position: -150px -200px; }
  .link-text a.a-video::after { width: 20px; height: 16px; background-position: -200px -200px; }
  .index-layout-v2 &gt; a.block.a-video .index_image::before { width: 62px; height: 43px; background-position: -350px -200px; }
  .library-item .library_table_data .a-video .data_icon { width: 31px; height: 24px; background-position: -450px -200px; }
  .link-text a.a-play::after { width: 16px; height: 16px; background-position: -500px -200px; }
  .link-text a.a-mail::after { width: 15px; height: 12px; background-position: 0px -250px; }
  .link-button-v2 a.a-mail &gt; .link_label::after { width: 17px; height: 13px; background-position: -50px -250px; }
  .heading-lv1-v2 .heading_print &gt; a::before,
  .link-text a.a-print::after { width: 16px; height: 14px; background-position: 0px -300px; }
  .link-text a.a-speaker::after,
  .library-item .library_table_data .a-speaker .data_icon { width: 32px; height: 24px; background-position: 0px -350px; }
  .link-text a.a-rss::after { width: 13px; height: 13px; background-position: 0px -400px; }
  .csr-news-compo .news_heading &gt; .news_heading_link &gt; li &gt; a.a-rss::before { width: 17px; height: 17px; background-position: -50px -400px; }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-prev { width: 16px; height: 27px; background-position: 0px -450px; }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-next { width: 16px; height: 27px; background-position: -50px -450px; }
  .location-compo .location_table .location_links &gt; li &gt; a.a-map::before { width: 17px; height: 25px; background-position: 0px -500px; }
  
  /* ----- data-row-sp ----- */
  [data-row-sp]:not([data-row-sp="1"]) {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  [data-row-sp]:not([data-row-sp="auto"]) &gt; * {
    margin-top: 1.25em;
    margin-left: 15px;
  }
  [data-row-sp="1"] &gt; *:nth-child(-n+1),
  [data-row-sp="2"] &gt; *:nth-child(-n+2),
  [data-row-sp="3"] &gt; *:nth-child(-n+3) {
    margin-top: 0 !important;
  }
  [data-row-sp="1"] &gt; *:nth-child(n+1),
  [data-row-sp="2"] &gt; *:nth-child(2n+1),
  [data-row-sp="3"] &gt; *:nth-child(3n+1) {
    margin-left: 0 !important;
  }
  [data-row-sp="2"] &gt; * { width: calc((100% - 15px) / 2); }
  [data-row-sp="3"] &gt; * { width: calc((100% - 30px) / 3); }
  [data-row-sp="auto"] {
    margin-right: -15px;
    margin-bottom: -.5em;
  }
  [data-row-sp="auto"] &gt; * {
    margin-top: 0 !important;
    margin-right: 15px;
    margin-bottom: .5em;
    margin-left: 0;
  }
  .column-layout[data-row-sp] &gt; .column_item {
    margin-top: 1.5em;
  }
  .column-layout.type-door[data-row-sp="1"] &gt; .column_item {
    margin-top: -1px;
  }
  .column-layout.type-door2[data-row-sp] &gt; .column_item {
    margin-top: 2em;
  }
  .link-text[data-row-sp="auto"] {
    margin-right: -30px;
    margin-bottom: -.5em;
  }
  .link-text[data-row-sp="auto"] &gt; li {
    margin-right: 30px;
    margin-bottom: .5em;
  }
  
  /* ----- search ----- */
  .search-box{
    display: none;
  }
  .search-box .search_form {
    position: relative;
    border: 3px solid #dfdfe3;
  }
  .search-box .search_input {
    width: 100%;
    height: 45px;
    padding: 10px 45px 10px 8px;
    border: none;
    background-color: #fff;
    box-shadow: none;
    font-size: 1.7rem;
    outline: none;
  }
  .search-box .search_submit {
    position: absolute;
    top: 0;
    right: 0;
    width: 45px;
    height: 45px;
    padding: 0;
    border: none;
    background-color: #e60012;
    background-image: url(../img/cmn_search_ic01-r2x.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 17px 17px;
    text-indent: -9999em;
    outline: none;
  }
  
  /* ------------------------------------------------------
   * Element &gt;&gt;&gt; Heading
  ------------------------------------------------------ */
  [class^="heading-lv"] .heading_title,
  [class^="heading-lv"] .heading_subtitle {
    line-height: 1.25;
  }
  [class^="heading-lv"] a.block.a-blank .heading_title::after,
  [class^="heading-lv"] a.block.a-pdf .heading_title::after {
    margin: 0 0 0 10px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  #main .heading-lv1 + *,
  #main .heading-lv1 + section &gt; [class*="heading-lv"]:first-child {
    margin-top: 2.15em;
  }
  #main .heading-lv1-v3 + *,
  #main .heading-lv2 + * {
    margin-top: 1.45em;
  }
  #main .heading-lv3 + *,
  #main .heading-lv4 + *,
  #main .heading-lv5 + * {
    margin-top: 1.1em;
  }
  
  /* ----- heading-lv1 ----- */
  .heading-lv1 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    margin: 0 0 2.15em;
    padding: 15px 0;
  }
  .heading-lv1 .heading_image {
    order: 3;
    margin-top: 1em;
  }
  .heading-lv1 .heading_image &gt; img {
    max-width: 109px;
    height: auto;
  }
  .heading-lv1 .heading_title {
    order: 2;
    font-size: 2.4rem;
  }
  .single .article-news p{
    line-height: 2em;
    margin-bottom: 1em;
    text-indent: 2em;
  }
  .single .article-news p img {
    margin-left: -2em;
    max-width: 100%;
  }
  .single-post .sd-pro-info .wx-p li {
    width: 100%;
    float: left;
    padding: 10px;
  }
  .single-post .sd-pro-info .wx-p li img {
    width: 100%;
    max-width: 100%;
    height: auto;
  }
  .heading-lv1 .heading_image + .heading_title {
    order: 1;
  }
  .heading-lv1 .heading_image + .heading_subtitle + .heading_title {
    order: 2;
  }
  .heading-lv1 .heading_title .f-italic {
    margin-right: 4px;
  }
  .heading-lv1 .heading_subtitle {
    order: 1;
    margin-bottom: .5em;
    font-size: 1.2rem;
  }
  .heading-lv1 .heading_title + .heading_subtitle,
  .heading-lv1 .heading_image + .heading_title + .heading_subtitle {
    order: 2;
  }
  .heading-lv1 .heading_title + .heading_subtitle {
    margin-top: .5em;
    margin-bottom: 0;
  }
  /* v2 */
  .heading-lv1-v2 {
    position: relative;
    margin: 0 0 2em 0;
    padding: 15px 0;
  }
  .heading-lv1-v2.is-bond {
    margin-bottom: 0;
  }
  .heading-lv1-v2[class*="type-"] {
    padding-bottom: 95px;
  }
  .heading-lv1-v2[class*="type-"]::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 78px;
    background-color: #e2e5ea;
    background-repeat: no-repeat;
    background-position: 50% 100%;
    background-size: auto 78px;
    content: "";
  }
  .heading-lv1-v2.type-about::after         { background-image: url(../img/cmn_heading_bg01_01-r2x.jpg); }
  .heading-lv1-v2.type-products::after      { background-image: url(../img/cmn_heading_bg01_02-r2x.jpg); }
  .heading-lv1-v2.type-rd::after            { background-image: url(../img/cmn_heading_bg01_03-r2x.jpg); }
  .heading-lv1-v2.type-csr::after           { background-image: url(../img/cmn_heading_bg01_04-r2x.jpg); }
  .heading-lv1-v2.type-form::after          { background-image: url(../img/cmn_heading_bg01_05-r2x.jpg); }
  .heading-lv1-v2.type-news::after          { background-image: url(../img/cmn_heading_bg01_08-r2x.jpg); }
  .heading-lv1-v2 .block {
    padding: 0 15px;
  }
  .heading-lv1-v2 .heading_title {
    font-size: 2.4rem;
  }
  .heading-lv1-v2 .heading_title .is-smaller {
    font-size: 66.66%;
  }
  .heading-lv1-v2 .heading_subtitle {
    margin-bottom: .5em;
    font-size: 1.2rem;
  }
  .heading-lv1-v2 .heading_print {
    display: none;
  }
  /* v3 */
  .heading-lv1-v3 {
    margin: 0 -15px 1.45em;
    background-color: #fff;
  }
  .heading-lv1-v3 .heading_visual {
    padding: 12px 15px;
    text-align: center;
  }
  .heading-lv1-v3 .heading_visual img {
    max-width: 75%;
    margin: 0 auto;
  }
  
  /* ----- heading-lv2 ----- */
  .heading-lv2 {
    margin: 2.85em 0 1.45em;
  }
  .heading-lv2 .block {
    position: relative;
    padding: 0 0 20px 0;
    border-bottom: 1px solid #dfdfe3;
    text-decoration: none;
  }
  .heading-lv2 .block::before {
    position: absolute;
    bottom: -1px;
    left: 50%;
    width: 100px;
    height: 1px;
    background-color: #e60012;
    margin: 0 0 0 -50px;
    content: "";
  }
  .heading-lv2 .heading_title {
    font-size: 2.0rem;
    text-align: center;
  }
  /* v2 */
  .heading-lv2-v2 {
    margin: 2.85em 0 1.45em;
  }
  .heading-lv2-v2 .block {
    position: relative;
    padding: 0 0 10px 0;
    border-bottom: 1px solid #dfdfe3;
    text-decoration: none;
  }
  .heading-lv2-v2 .block::before {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100px;
    height: 1px;
    background-color: #e60012;
    content: "";
  }
  .heading-lv2-v2 .heading_title {
    font-size: 2.0rem;
  }
  .heading-lv2-v2 a.block .heading_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 7px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .heading-lv2-v2 .heading_subtitle {
    margin-bottom: .5em;
    font-size: 1.2rem;
  }
  
  /* ----- heading-lv3 ----- */
  .heading-lv3 {
    margin: 2.15em 0 1.45em;
  }
  .heading-lv3 .block {
    position: relative;
    padding: 0 0 10px 0;
    text-decoration: none;
  }
  .heading-lv3 .block::before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50px;
    height: 1px;
    background-color: #e60012;
    content: "";
  }
  .heading-lv3 .heading_title {
    font-size: 1.8rem;
  }
  .heading-lv3 a.block .heading_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 7px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .heading-lv3 .heading_subtitle {
    margin-bottom: .5em;
    font-size: 1.2rem;
    font-weight: 300;
  }
  
  /* ----- heading-lv4 ----- */
  .heading-lv4 {
    margin: 2.15em 0 1.1em;
  }
  .heading-lv4 .block {
    position: relative;
    padding: 0 0 7px 0;
    text-decoration: none;
  }
  .heading-lv4 .block::before {
    position: absolute;
    bottom: 0px;
    left: 0;
    width: 30px;
    height: 1px;
    background-color: #999;
    content: "";
  }
  .heading-lv4 .heading_title {
    font-size: 1.6rem;
  }
  .heading-lv4 a.block .heading_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 7px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  
  /* ----- heading-lv5 ----- */
  .heading-lv5 {
    margin: 1.8em 0 1.1em;
  }
  .heading-lv5 .heading_title {
    font-size: 1.5rem;
    font-weight: 700;
  }
  
  /* ------------------------------------------------------
   * Element &gt;&gt;&gt; Text
  ------------------------------------------------------ */
  /* ----- text-paragraph ----- */
  .text-paragraph {
    margin-top: 1em;
  }
  .text-paragraph[data-gap-sp="x0"]   { margin-top: 0 !important; }
  .text-paragraph[data-gap-sp="x0.5"] { margin-top: .5em !important; }
  .text-paragraph[data-gap-sp="x1"]   { margin-top: 1em !important; }
  .text-paragraph[data-gap-sp="x1.5"] { margin-top: 1.5em !important; }
  .text-paragraph[data-gap-sp="x2"]   { margin-top: 2em !important; }
  .text-paragraph[data-gap-sp="x2.5"] { margin-top: 2.5em !important; }
  .text-paragraph[data-gap-sp="x3"]   { margin-top: 3em !important; }
  
  /* ----- text-lead ----- */
  .text-lead {
    margin: 1em 0 .75em;
    font-size: 1.8rem;
    font-weight: 700;
  }
  
  /* ----- text-catch ----- */
  .text-catch {
    margin: 1em 0 .75em;
    color: #e60012;
    font-size: 2.4rem;
    text-align: center;
  }
  /* v2 */
  .text-catch-v2 {
    margin: 1em 0 .75em;
    text-align: center;
  }
  
  /* ----- text-title ----- */
  .text-title {
    margin: 1em 0 .5em;
    font-weight: 700;
  }
  #main .text-title + * {
    margin-top: .5em;
  }
  
  /* ----- text-quote ----- */
  .text-quote {
    margin-top: 1em;
    padding-left: 15px;
  }
  
  /* ------------------------------------------------------
   * Element &gt;&gt;&gt; List
  ------------------------------------------------------ */
  [class*="list-note"],
  [class*="list-bullet"],
  [class*="list-order"] {
    margin-top: 1em;
  }
  [class*="list-note"].type-section,
  [class*="list-bullet"].type-section,
  [class*="list-order"].type-section {
    margin-top: 2em;
  }
  [class*="list-description"] {
    margin-top: 1.5em;
  }
  [class*="list-description"].type-section {
    margin-top: 2.5em;
  }
  [class*="list-note"] &gt; li + li,
  [class*="list-bullet"] &gt; li + li,
  [class*="list-order"] &gt; li + li {
    margin-top: .5em;
  }
  [class*="list-note"].type-section &gt; li + li,
  [class*="list-bullet"].type-section &gt; li + li,
  [class*="list-order"].type-section &gt; li + li {
    margin-top: 1.25em;
  }
  [class*="list-"].is-nest {
    margin: .5em 0 .75em;
  }
  [class*="list-"].is-nest.type-section {
    margin: .75em 0 1em;
  }
  [class*="list-note"] &gt; li &gt; .list_detail,
  [class*="list-bullet"] &gt; li &gt; .list_detail,
  [class*="list-order"] &gt; li &gt; .list_detail {
    margin-top: .25em;
  }
  [class*="list-note"].type-section &gt; li &gt; .list_detail,
  [class*="list-bullet"].type-section &gt; li &gt; .list_detail,
  [class*="list-order"].type-section &gt; li &gt; .list_detail {
    margin-top: .5em;
  }
  [class*="list-note"] &gt; li &gt; .list_detail &gt; *:first-child,
  [class*="list-note"] &gt; li &gt; .list_detail &gt; *:first-child &gt; [class*="heading-lv"],
  [class*="list-bullet"] &gt; li &gt; .list_detail &gt; *:first-child,
  [class*="list-bullet"] &gt; li &gt; .list_detail &gt; *:first-child &gt; [class*="heading-lv"],
  [class*="list-order"] &gt; li &gt; .list_detail &gt; *:first-child,
  [class*="list-order"] &gt; li &gt; .list_detail &gt; *:first-child &gt; [class*="heading-lv"],
  [class*="list-description"] &gt; dd &gt; *:first-child,
  [class*="list-description"] &gt; dd &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- list-al-right ----- */
  .list-al-right {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    margin-top: 1em;
  }
  .list-al-right &gt; [class*="list-"] {
    margin-top: 0;
  }
  
  /* ----- list-note ----- */
  .list-note &gt; li {
    position: relative;
    padding-left: 1.2em;
  }
  .list-note &gt; li &gt; .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  /* v2 */
  .list-note-v2 &gt; li {
    position: relative;
    padding-left: 3em;
  }
  .list-note-v2 &gt; li &gt; .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  /* v3 */
  .list-note-v3 &gt; li {
    position: relative;
    padding-left: 1.7em;
  }
  .list-note-v3 &gt; li &gt; .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  /* v4 */
  .list-note-v4 &gt; li {
    position: relative;
    padding-left: 3em;
  }
  .list-note-v4 &gt; li &gt; .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  
  /* ----- list-bullet ----- */
  .list-bullet &gt; li {
    position: relative;
    padding-left: 16px;
  }
  .list-bullet &gt; li::before {
    position: absolute;
    top: .5em;
    left: 0;
    width: 7px;
    height: 7px;
    border: 2px solid #e60012;
    background-color: #fff;
    content: "";
  }
  .list-bullet &gt; li &gt; .list_detail.is-noindent {
    margin-left: -16px;
  }
  /* v2 */
  .list-bullet-v2 &gt; li {
    position: relative;
    padding-left: 12px;
    font-size: 1.3rem;
  }
  .list-bullet-v2 &gt; li::before {
    position: absolute;
    top: .6em;
    left: 0;
    width: 4px;
    height: 4px;
    background-color: #999;
    content: "";
  }
  .list-bullet-v2 &gt; li &gt; .list_detail.is-noindent {
    margin-left: -12px;
  }
  /* v3 */
  .list-bullet-v3 &gt; li {
    position: relative;
    padding-left: 16px;
  }
  .list-bullet-v3 &gt; li::before {
    position: absolute;
    top: .5em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #999;
    content: "";
  }
  .list-bullet-v3 &gt; li &gt; .list_detail.is-noindent {
    margin-left: -16px;
  }
  /* v4 */
  .list-bullet-v4 &gt; li {
    position: relative;
    padding-left: 12px;
    font-size: 1.3rem;
  }
  .list-bullet-v4 &gt; li::before {
    position: absolute;
    top: .6em;
    left: 0;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #999;
    content: "";
  }
  .list-bullet-v4 &gt; li &gt; .list_detail.is-noindent {
    margin-left: -12px;
  }
  
  /* ----- list-order ----- */
  .list-order &gt; li {
    position: relative;
    padding-left: 2em;
  }
  .list-order &gt; li &gt; .list_mark {
    position: absolute;
    top: 0;
    left: 0;
    font-weight: 700;
  }
  .list-order &gt; li &gt; .list_detail.is-noindent {
    margin-left: -2em;
  }
  /* v2 */
  .list-order-v2 &gt; li {
    position: relative;
    padding-left: 3em;
    font-size: 1.3rem;
  }
  .list-order-v2 &gt; li &gt; .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  .list-order-v2 &gt; li &gt; .list_detail.is-noindent {
    margin-left: -3em;
  }
  
  /* ----- list-description ----- */
  .list-description + .list-description {
    margin-top: 1.5em;
  }
  .list-description &gt; dt {
    margin: 1em 0 .5em;
    font-weight: 700;
  }
  .list-description &gt; dt:first-child {
    margin-top: 0 !important;
  }
  .list-description &gt; dd {
  }
  /* v2 */
  .list-description-v2 + .list-description-v2 {
    margin-top: 1.5em;
  }
  .list-description-v2 &gt; dt {
    margin: 1em 0 .5em;
    font-weight: 700;
  }
  .list-description-v2 &gt; dt:first-child {
    margin-top: 0 !important;
  }
  .list-description-v2 &gt; dd {
  }
  
  /* ------------------------------------------------------
   * Element &gt;&gt;&gt; Link
  ------------------------------------------------------ */
  [class*="link-text"] {
    margin-top: 1em;
  }
  [class*="link-text"] &gt; li + li {
    margin-top: .75em;
  }
  [class*="link-button"] {
    margin-top: 1.5em;
  }
  [class*="link-button"] &gt; li + li {
    margin-top: .75em;
  }
  [class*="link-button"] &gt; li &gt; a {
    width: 100%;
  }
  [class*="link-button"].is-centering {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
  [class*="link-button"].is-centering &gt; li {
    display: -webkit-flex;
    display: flex;
    width: calc((100% - 15px) / 2);
  }
  [class*="link-button"].is-centering &gt; li + li {
    margin-top: 0;
    margin-left: 15px;
  }
  [class*="link-button"].is-centering &gt; li &gt; a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
  }
  [class*="link-button"][data-row-sp] &gt; li {
    display: -webkit-flex;
    display: flex;
    margin-top: .75em;
  }
  [class*="link-button"][data-row-sp] &gt; li &gt; a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
  }
  [class*="link-"].is-nest {
    margin: .5em 0 1em;
  }
  
  /* ----- link-inline ----- */
  a.link-inline {
    text-decoration: underline;
  }
  a.link-inline.a-blank::after,
  a.link-inline.a-pdf::after {
    position: relative;
    top: -2px;
    margin: 0 6px;
  }
  
  /* ----- link-text ----- */
  .link-text a {
  }
  .link-text a::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 4px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 8px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .link-text a[class*="a-"]::after {
    top: -1px;
    right: 0;
    margin: 0 0 0 6px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  
  /* ----- link-button ----- */
  .link-button a {
    display: inline-block;
    position: relative;
    width: 100%;
    padding: 13px 10px;
    border: 1px solid #dfdfe3;
    background-color: #fff;
    text-align: center;
    text-decoration: none;
  }
  .link-button a &gt; .link_label {
    display: inline-block;
    position: relative;
    padding: 0 16px;
  }
  .link-button a[class*="a-"] &gt; .link_label {
    padding: 0 20px;
  }
  .link-button a &gt; .link_label::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 3px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .link-button a[class*="a-"] &gt; .link_label::after {
    right: 0;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .link-button a.a-pdf &gt; .link_label::after {
    margin-top: -7px;
  }
  /* v2 */
  .link-button-v2 a {
    display: inline-block;
    position: relative;
    width: 100%;
    padding: 14px 11px;
    background-color: #555;
    color: #fff;
    text-align: center;
    text-decoration: none;
  }
  .link-button-v2 a &gt; .link_label {
    display: inline-block;
    position: relative;
    padding: 0 16px;
  }
  .link-button-v2 a[class*="a-"] &gt; .link_label {
    padding: 0 20px;
  }
  .link-button-v2 a &gt; .link_label::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 3px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .link-button-v2 a[class*="a-"] &gt; .link_label::after {
    right: 0;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .link-button-v2 a.a-pdf &gt; .link_label::after {
    margin-top: -7px;
  }
  .link-button-v2.type-contact a &gt; .link_label {
    display: block;
  }
  .link-button-v2.type-contact a.a-mail  &gt; .link_label::after {
    margin-top: -7px;
  }
  /* v3 */
  .link-button-v3 a {
    display: inline-block;
    position: relative;
    width: 100%;
    padding: 13px 10px;
    border: 1px solid #e60012;
    background-color: #fff;
    text-align: center;
    text-decoration: none;
  }
  .link-button-v3 a &gt; .link_label {
    display: inline-block;
    position: relative;
    padding: 0 16px;
  }
  .link-button-v3 a[class*="a-"] &gt; .link_label {
    padding: 0 20px;
  }
  .link-button-v3 a &gt; .link_label::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 3px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .link-button-v3 a[class*="a-"] &gt; .link_label::after {
    right: 0;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .link-button-v3 a.a-pdf &gt; .link_label::after {
    margin-top: -7px;
  }
  /* v4 */
  .link-button-v4 a {
    display: inline-block;
    position: relative;
    width: 100%;
    padding: 14px 11px;
    background-color: #e60012;
    color: #fff;
    text-align: center;
    text-decoration: none;
  }
  .link-button-v4 a &gt; .link_label {
    display: inline-block;
    position: relative;
    padding: 0 16px;
  }
  .link-button-v4 a[class*="a-"] &gt; .link_label {
    padding: 0 20px;
  }
  .link-button-v4 a &gt; .link_label::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 3px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .link-button-v4 a[class*="a-"] &gt; .link_label::after {
    right: 0;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .link-button-v4 a.a-pdf &gt; .link_label::after {
    margin-top: -7px;
  }
  
  /* ------------------------------------------------------
   * Element &gt;&gt;&gt; Image
  ------------------------------------------------------ */
  /* ----- image-set ----- */
  .image-set {
    margin-top: 1.5em;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
  [class*="column-media"] &gt; .column_image &gt; .image-set + .image-set {
    margin-top: 1.25em;
  }
  .image-set.gp-al-right {
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }
  .image-set.gp-al-left {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }
  .image-set:not(.gp-al-left):not(.gp-al-right) .image_inner {
    text-align: center;
  }
  .image-set .image_inner &gt; *:first-child,
  .image-set .image_inner &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .image-set .image_inner &gt; a {
    display: block;
  }
  .image-set .image_caption {
    margin-top: .5em;
    text-align: left;
  }
  
  /* ------------------------------------------------------
   * Element &gt;&gt;&gt; Video
  ------------------------------------------------------ */
  
  /* ------------------------------------------------------
   * Element &gt;&gt;&gt; Form
  ------------------------------------------------------ */
  
  /* ------------------------------------------------------
   * Element &gt;&gt;&gt; Other
  ------------------------------------------------------ */
  /* ----- icon-news ----- */
  .icon-news {
    display: inline-block;
    min-width: 65px;
    padding: 0 3px;
    background-color: #787878;
    color: #fff;
    font-size: 1.0rem;
    font-weight: 300;
    font-style: normal;
    line-height: 16px;
    text-align: center;
    vertical-align: middle;
  }
  
  /* ----- icon-sgds ----- */
  .icon-sgds img {
    width: 77px;
    height: 77px;
  }
  
  /* ----- icon-warranty ----- */
  .icon-warranty {
    margin: 0 2px;
  }
  .icon-warranty img {
    position: relative;
    top: -2px;
    vertical-align: middle;
  }
  
  /* ----- logo-brand ----- */
  .logo-brand {
    padding: 40px 0 30px;
    text-align: center;
  }
  [class*="heading-lv"] + .logo-brand {
    padding-top: 30px;
  }
  .logo-brand + * {
    margin-top: 0 !important;
  }
  .logo-brand img {
    width: 220px;
    height: auto;
  }
  /* v2 */
  .logo-brand-v2 {
    padding: 20px 0;
  }
  [class*="heading-lv"] + .logo-brand-v2 {
    padding-top: 0;
  }
  .logo-brand-v2 + * {
    margin-top: 0 !important;
  }
  .logo-brand-v2 img {
    width: 170px;
    height: auto;
  }
  
  /* ------------------------------------------------------
   * Layout &gt;&gt;&gt; Column
  ------------------------------------------------------ */
  [class*="column-layout"] &gt; [class*="column_item"] &gt; *:first-child,
  [class*="column-layout"] &gt; [class*="column_item"] &gt; *:first-child &gt; [class*="heading-lv"],
  [class*="column-media"] &gt; [class*="column_"] &gt; *:first-child,
  [class*="column-media"] &gt; [class*="column_"] &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- column-layout ----- */
  .column-layout {
    margin-top: 2.5em;
  }
  .column-layout.has-separator {
    margin-top: 4.5em;
  }
  
  /* ----- column-media ----- */
  .column-media {
    margin-top: 2.5em;
  }
  .column-media[data-layout-sp="row"] &gt; .column_image {
    max-width: calc((100% - 15px) / 2);
  }
  .column-media[data-layout-sp="row"][data-media-side="right"] &gt; .column_image {
    float: right;
    margin-left: 15px;
  }
  .column-media[data-layout-sp="row"][data-media-side="left"] &gt; .column_image {
    float: left;
    margin-right: 15px;
  }
  .column-media[data-layout-sp="col"] &gt; .column_detail,
  .column-media[data-layout-sp="col-reverse"] &gt; .column_image {
    margin-top: 1.5em;
  }
  .column-media[data-layout-sp="col-reverse"] {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .column-media[data-layout-sp="row"] .column_detail[data-wraparound="false"] {
    overflow: hidden;
  }
  
  /* ------------------------------------------------------
   * Layout &gt;&gt;&gt; Table
  ------------------------------------------------------ */
  [class^="table-layout"] {
    overflow-x: auto;
    padding-bottom: 1px;
  }
  [class*="table-layout"] th &gt; *:first-child,
  [class*="table-layout"] th &gt; *:first-child &gt; [class*="heading-lv"],
  [class*="table-layout"] td &gt; *:first-child,
  [class*="table-layout"] td &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- table-layout ----- */
  .table-layout {
    margin-top: 1.5em;
  }
  .table-layout .table_inner {
    width: 100%;
    border-top: 1px solid #ddd;
  }
  .table-layout caption {
    margin-bottom: .5em;
    text-align: left;
  }
  .table-layout caption &gt; *:first-child,
  .table-layout caption &gt; *:first-child &gt; [class*="heading-lv"]{
    margin-top: 0 !important;
  }
  .table-layout caption &gt; *:last-child {
    margin-bottom: 0 !important;
  }
  .table-layout .table_title {
    font-size: 1.5rem;
    margin-bottom: .5em;
  }
  .table-layout .table_caption {
    margin: .5em 0;
    font-size: 1.2rem;
    font-weight: 300;
  }
  .table-layout th,
  .table-layout td {
    padding: 8px 12px;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    background-color: #fff;
    font-weight: 400;
    text-align: left;
    vertical-align: top;
  }
  .table-layout tr &gt; th:last-child,
  .table-layout tr &gt; td:last-child {
    border-right: none;
  }
  .table-layout thead th {
    text-align: center;
    vertical-align: middle;
  }
  .table-layout th &gt; *:first-child,
  .table-layout th &gt; *:first-child &gt; [class*="heading-lv"],
  .table-layout td &gt; *:first-child,
  .table-layout td &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .table-layout .cell-style1 {
    background-color: #adadad;
    color: #fff;
  }
  .table-layout th.cell-style1 {
    font-weight: 700;
  }
  .table-layout thead th.cell-style1 {
    background-color: #787878;
  }
  .table-layout .cell-style2 {
    background-color: #f7f7fa;
  }
  .table-layout th.cell-style2 {
    font-weight: 700;
  }
  .table-layout .cell-style3 {
    background-color: #fff0f0;
    color: #e60012;
    font-weight: 700;
  }
  .table-layout .cell-style4 {
    color: #e60012;
    font-weight: 700;
  }
  .table-layout .cell-style5 {
    color: #666;
    font-weight: 700;
  }
  .table-layout .cell-style6 {
    background-color: #efe7fd;
  }
  .table-layout .cell-style7 {
    color: #e60012;
  }
  body:not([data-browser="chrome"]) .table-layout .cell-border2 {
    border-right: 1px solid #ddd !important;
  }
  .table-layout .cell-icon {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  }
  .table-layout[data-layout-sp="scroll"] {
    overflow-x: auto;
    padding-bottom: 8px;
  }
  .table-layout[data-layout-sp="scroll"]::-webkit-scrollbar {
    height: 12px;
  }
  .table-layout[data-layout-sp="scroll"]::-webkit-scrollbar-track {
    border-radius: 12px;
    background: #f1f1f1;
  }
  .table-layout[data-layout-sp="scroll"]::-webkit-scrollbar-thumb {
    border-radius: 12px;
    background: #888;
  }
  .table-layout[data-layout-sp="scroll"] .table_inner {
    width: 880px !important;
  }
  .table-layout[data-layout-sp="vertical"] col,
  .table-layout[data-layout-sp="vertical"] tbody,
  .table-layout[data-layout-sp="vertical"] tr,
  .table-layout[data-layout-sp="vertical"] th,
  .table-layout[data-layout-sp="vertical"] td {
    display: block;
    width: 100% !important;
  }
  /* v2 */
  .table-layout-v2 {
    margin-top: 1.5em;
  }
  .table-layout-v2 .table_inner {
    width: 100%;
    border-top: 1px solid #ddd;
  }
  .table-layout-v2 caption {
    margin-bottom: .75em;
    padding: 0 15px;
    text-align: left;
  }
  .table-layout-v2 .table_title {
    margin-bottom: .5em;
    font-weight: 700;
  }
  .table-layout-v2 caption &gt; *:first-child,
  .table-layout-v2 caption &gt; *:first-child &gt; [class*="heading-lv"]{
    margin-top: 0 !important;
  }
  .table-layout-v2 caption &gt; *:last-child {
    margin-bottom: 0 !important;
  }
  .table-layout-v2 th,
  .table-layout-v2 td {
    padding: 15px;
    border-right: 1px solid #dfdfe3;
    border-bottom: 1px solid #dfdfe3;
    background-color: #fff;
    font-weight: 400;
    text-align: left;
    vertical-align: top;
  }
  .table-layout-v2 tr &gt; th:last-child,
  .table-layout-v2 tr &gt; td:last-child {
    border-right: none;
  }
  .table-layout-v2 thead th {
    text-align: center;
    vertical-align: middle;
  }
  .table-layout-v2 th &gt; *:first-child,
  .table-layout-v2 th &gt; *:first-child &gt; [class*="heading-lv"],
  .table-layout-v2 td &gt; *:first-child,
  .table-layout-v2 td &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .table-layout-v2 .cell-style1 {
    background-color: #adadad;
    color: #fff;
  }
  .table-layout-v2 th.cell-style1 {
    font-weight: 700;
  }
  .table-layout-v2 thead th.cell-style1 {
    background-color: #787878;
  }
  .table-layout-v2 .cell-style2 {
    background-color: #f7f7fa;
  }
  .table-layout-v2 th.cell-style2 {
    font-weight: 700;
  }
  .table-layout-v2[data-layout-sp="vertical"] {
    margin-right: -15px;
    margin-left: -15px;
  }
  .faq-layout .faq_detail .table-layout-v2[data-layout-sp="vertical"] {
    margin-right: 0;
    margin-left: 0;
  }
  .table-layout-v2[data-layout-sp="vertical"] col,
  .table-layout-v2[data-layout-sp="vertical"] tbody,
  .table-layout-v2[data-layout-sp="vertical"] tr,
  .table-layout-v2[data-layout-sp="vertical"] th,
  .table-layout-v2[data-layout-sp="vertical"] td {
    display: block;
    width: 100% !important;
  }
  .table-layout-v2[data-layout-sp="vertical"] th {
    border-right: none;
    border-bottom: none;
  }
  .table-layout-v2[data-layout-sp="vertical"] th + th {
    border-top: 1px solid #dfdfe3;
  }
  .table-layout-v2[data-layout-sp="vertical"] td {
    padding-bottom: 20px;
  }
  /* v3 */
  .table-layout-v3 {
    margin-top: 1.5em;
  }
  .table-layout-v3 .table_inner {
    width: 100%;
    border-top: 1px solid #ddd;
  }
  .table-layout-v3 caption {
    margin-bottom: .5em;
    text-align: left;
  }
  .table-layout-v3 caption &gt; *:first-child,
  .table-layout-v3 caption &gt; *:first-child &gt; [class*="heading-lv"]{
    margin-top: 0 !important;
  }
  .table-layout-v3 caption &gt; *:last-child {
    margin-bottom: 0 !important;
  }
  .table-layout-v3 th,
  .table-layout-v3 td {
    padding: 15px;
    border-right: 1px solid #dfdfe3;
    border-bottom: 1px solid #dfdfe3;
    background-color: #fff;
    font-weight: 400;
    text-align: left;
    vertical-align: top;
  }
  .table-layout-v3 tr &gt; th:last-child,
  .table-layout-v3 tr &gt; td:last-child {
    border-right: none;
  }
  .table-layout-v3 thead th {
    text-align: center;
    vertical-align: middle;
  }
  .table-layout-v3 th &gt; *:first-child,
  .table-layout-v3 th &gt; *:first-child &gt; [class*="heading-lv"],
  .table-layout-v3 td &gt; *:first-child,
  .table-layout-v3 td &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .table-layout-v3 .cell-style1 {
    background-color: #adadad;
    color: #fff;
  }
  .table-layout-v3 th.cell-style1 {
    font-weight: 700;
  }
  .table-layout-v3 .cell-style2 {
    background-color: #f7f7fa;
  }
  .table-layout-v3 th.cell-style2 {
    font-weight: 700;
  }
  .table-layout-v3[data-layout-sp="vertical"] {
    margin-right: -15px;
    margin-left: -15px;
  }
  .faq-layout .faq_detail .table-layout-v3[data-layout-sp="vertical"] {
    margin-right: 0;
    margin-left: 0;
  }
  .table-layout-v3[data-layout-sp="vertical"] col,
  .table-layout-v3[data-layout-sp="vertical"] tbody,
  .table-layout-v3[data-layout-sp="vertical"] tr,
  .table-layout-v3[data-layout-sp="vertical"] th,
  .table-layout-v3[data-layout-sp="vertical"] td {
    display: block;
    width: 100% !important;
  }
  .table-layout-v3[data-layout-sp="vertical"] .table_inner {
    border-top: none;
  }
  .table-layout-v3[data-layout-sp="vertical"] .cell-style1 {
    padding-top: 20px;
    padding-bottom: 12px;
    background-color: #fff;
    color: #333;
    font-weight: 700;
  }
  .table-layout-v3[data-layout-sp="vertical"] .cell-style2 {
    padding-top: 15px;
    padding-bottom: 15px;
    border-bottom: none;
    background-color: #f7f7fa;
    font-weight: 700;
  }
  .table-layout-v3[data-layout-sp="vertical"] th,
  .table-layout-v3[data-layout-sp="vertical"] td {
    border-right: none;
  }
  .table-layout-v3[data-layout-sp="vertical"] td {
    padding-top: 15px;
    padding-bottom: 20px;
  }
  
  /* ----- library-table-layout ----- */
  .library-table-layout {
    width: 100vw;
    margin-left: -15px;
  }
  .library-table-layout .library_table_heading {
    display: none;
  }
  
  /* ------------------------------------------------------
   * Layout &gt;&gt;&gt; Box
  ------------------------------------------------------ */
  [class*="box-layout"] {
    margin-top: 2.5em;
  }
  [class*="box-layout"] &gt; [class*="box_detail"] &gt; *:first-child,
  [class*="box-layout"] &gt; [class*="box_detail"] &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- box-layout ----- */
  .box-layout {
    margin-top: 2.85em;
    border: 1px solid #ddd;
  }
  .box-layout &gt; .box_title {
    padding: 13px 15px 12px;
    background-color: #f1f1f1;
    font-size: 1.7rem;
    font-weight: 700;
    line-height: 1.2;
  }
  .box-layout &gt; .box_detail {
    padding: 15px;
    background-color: #fff;
  }
  .box-layout &gt; .box_detail &gt; *:first-child {
    margin-top: 0 !important;
  }
  /* v2 */
  .box-layout-v2 {
    margin-top: 2.85em;
    border: 1px solid #e60012;
  }
  .box-layout-v2 &gt; .box_title {
    padding: 12px;
    background-color: #e60012;
    color: #fff;
    font-size: 2.0rem;
    line-height: 1.25;
    text-align: center;
  }
  .box-layout-v2 &gt; .box_title .is-smaller {
    font-size: 66.66%;
  }
  .box-layout-v2 &gt; .box_detail {
    padding: 25px;
    background-color: #fff;
  }
  
  /* ------------------------------------------------------
   * Layout &gt;&gt;&gt; Other
  ------------------------------------------------------ */
  /* ----- accordion-layout ----- */
  .accordion-layout {
    margin-top: 2.5em;
  }
  .accordion-layout .accordion_trigger {
    padding: 13px 10px 12px;
    border: 1px solid #dfdfe3;
    background-color: #fff;
  }
  .accordion-layout .accordion_trigger &gt; .accordion_label {
    display: block;
    position: relative;
    padding: 0 30px;
    text-align: center;
  }
  .accordion-layout .accordion_trigger &gt; .accordion_label::before,
  .accordion-layout .accordion_trigger &gt; .accordion_label::after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 19px;
    height: 1px;
    background-color: #e60012;
    content: "";
  }
  .accordion-layout .accordion_trigger &gt; .accordion_label::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .accordion-layout .accordion_trigger.is-active &gt; .accordion_label::before {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .accordion-layout .accordion_detail {
    padding: 14px 19px;
    border: 1px solid #dfdfe3;
    border-top: none;
    background-color: #fff;
  }
  .accordion-layout .accordion_detail &gt; *:first-child,
  .accordion-layout .accordion_detail &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  /* v2 */
  .accordion-layout-v2 {
    margin-top: 2.5em;
  }
  .accordion-layout-v2 .accordion_list_trigger {
    float: right;
  }
  .accordion-layout-v2 .accordion_list_trigger &gt; .accordion_list_label {
    display: inline-block;
    position: relative;
    min-width: 165px;
    padding: 12px 40px 12px 12px;
    background-color: #666;
    color: #fff;
    text-align: center;
  }
  .accordion-layout-v2 .accordion_list_trigger &gt; .accordion_list_label::before,
  .accordion-layout-v2 .accordion_list_trigger &gt; .accordion_list_label::after {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 19px;
    height: 1px;
    background-color: #fff;
    content: "";
  }
  .accordion-layout-v2 .accordion_list_trigger &gt; .accordion_list_label::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .accordion-layout-v2 .accordion_list_trigger.is-active &gt; .accordion_list_label::before {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .accordion-layout-v2 .accordion_list_detail {
    clear: both;
    padding-top: 20px;
  }
  .accordion-layout-v2 .accordion_list_detail &gt; *:first-child,
  .accordion-layout-v2 .accordion_list_detail &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  /* v3 */
  .accordion-layout-v3 {
    margin-top: 2.14em;
  }
  .accordion-layout-v3 .accordion_trigger {
    padding: 15px 20px 14px;
    border: 1px solid #dfdfe3;
    background-color: #fff;
  }
  .accordion-layout-v3 .accordion_trigger &gt; .accordion_label {
    display: block;
    position: relative;
    padding: 0 30px 0 0;
    font-size: 1.8rem;
    font-weight: 700;
    text-align: left;
  }
  .accordion-layout-v3 .accordion_trigger &gt; .accordion_label::before,
  .accordion-layout-v3 .accordion_trigger &gt; .accordion_label::after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 13px;
    height: 2px;
    margin: -1px 0 0 0;
    background-color: #656666;
    content: "";
  }
  .accordion-layout-v3 .accordion_trigger &gt; .accordion_label::before {
    right: 9px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .accordion-layout-v3 .accordion_trigger.is-active &gt; .accordion_label::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .accordion-layout-v3 .accordion_trigger &gt; .accordion_label::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .accordion-layout-v3 .accordion_trigger.is-active &gt; .accordion_label::after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .accordion-layout-v3 .accordion_detail {
    padding: 20px 0 0 0;
    border: none;
    background-color: #fff;
  }
  .accordion-layout-v3 .accordion_detail &gt; *:first-child,
  .accordion-layout-v3 .accordion_detail &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- faq-layout ----- */
  .faq-layout {
    margin: 2.14em -15px 0;
    border-bottom: 1px solid #dfdfe3;
  }
  .faq-layout + .faq-layout {
    margin-top: 0;
  }
  .faq-layout .faq_trigger {
    position: relative;
    border-top: 1px solid #dfdfe3;
    padding: 15px 15px 16px;
    background-color: #f7f7fa;
    font-weight: 700;
  }
  .faq-layout + .faq-layout .faq_trigger {
    border-top: none;
  }
  .faq-layout .faq_trigger &gt; .faq_label {
    position: relative;
    padding: 0 25px 0 32px;
    font-size: 1.4rem;
  }
  .faq-layout .faq_trigger &gt; .faq_label &gt; .faq_icon {
    position: absolute;
    left: 0;
    top: -5px;
    color: #e60012;
    font-size: 2.5rem;
  }
  .faq-layout .faq_trigger &gt; .faq_label::before,
  .faq-layout .faq_trigger &gt; .faq_label::after {
    position: absolute;
    top: 10px;
    right: 0;
    width: 19px;
    height: 1px;
    margin: -1px 0 0 0;
    background-color: #e60012;
    content: "";
    z-index: 2;
    transition: transform 0.2s;
  }
  .faq-layout .faq_trigger &gt; .faq_label::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .faq-layout .faq_trigger.is-active &gt; .faq_label::before {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .faq-layout .faq_detail {
    padding: 17px 15px;
    background-color: #fff;
  }
  .faq-layout .faq_detail &gt; .faq_detail_inner {
    position: relative;
    padding-left: 33px;
    font-size: 1.4rem;
  }
  .faq-layout .faq_detail &gt; .faq_detail_inner &gt; .faq_icon {
    position: absolute;
    left: 0;
    top: 13px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 2.5rem;
    font-weight: 700;
  }
  .faq-layout .faq_detail &gt; .faq_detail_inner &gt; .faq_icon + *,
  .faq-layout .faq_detail &gt; .faq_detail_inner &gt; .faq_icon + * &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- tab-layout ----- */
  .tab-layout {
    margin-top: 2.5em;
  }
  .tab-layout &gt; .tab_navi {
    margin: 0 -15px;
    padding: 0 15px;
    border-bottom: 1px solid #dfdfe3;
  }
  .tab-layout &gt; .tab_navi &gt; .tab_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    margin: 0 auto;
  }
  .tab-layout &gt; .tab_navi &gt; .tab_list &gt; li {
    display: -webkit-flex;
    display: flex;
    position: relative;
    bottom: -1px;
    margin-left: 15px;
  }
  .tab-layout[data-count-sp="2"] &gt; .tab_navi &gt; .tab_list &gt; li { width: calc((100% - 15px) / 2); }
  .tab-layout[data-count-sp="3"] &gt; .tab_navi &gt; .tab_list &gt; li { width: calc((100% - 30px) / 3); }
  .tab-layout[data-count-sp="4"] &gt; .tab_navi &gt; .tab_list &gt; li { width: calc((100% - 45px) / 4); }
  .tab-layout[data-count-sp="2"] &gt; .tab_navi &gt; .tab_list &gt; li:nth-child(2n+1),
  .tab-layout[data-count-sp="3"] &gt; .tab_navi &gt; .tab_list &gt; li:nth-child(3n+1),
  .tab-layout[data-count-sp="4"] &gt; .tab_navi &gt; .tab_list &gt; li:nth-child(4n+1) {
    margin-left: 0;
  }
  .tab-layout &gt; .tab_navi &gt; .tab_list &gt; li &gt; a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 100%;
    padding: 10px 5px 12px;
    border: 1px solid transparent;
    border-bottom: none;
    text-decoration: none;
    text-align: center;
  }
  .tab-layout &gt; .tab_navi &gt; .tab_list &gt; li &gt; a::before {
    position: absolute;
    top: 0;
    left: -1px;
    width: calc(100% + 2px);
    height: 2px;
    background-color: #666;
    content: "";
  }
  .tab-layout &gt; .tab_navi &gt; .tab_list &gt; li:not(.is-current) &gt; a::after {
    position: absolute;
    top: 0;
    left: -1px;
    width: 0;
    height: 2px;
    background-color: #e60012;
    content: "";
  }
  .tab-layout &gt; .tab_navi &gt; .tab_list &gt; li.is-current &gt; a {
    border-right-color: #dfdfe3;
    border-left-color: #dfdfe3;
    background-color: #fff;
    color: #e60012;
    font-weight: 700;
  }
  .tab-layout.has-anchor &gt; .tab_navi &gt; .tab_list &gt; li.is-current &gt; a {
    background-color: #f7f7fa;
  }
  .tab-layout &gt; .tab_navi &gt; .tab_list &gt; li.is-current &gt; a::before {
    background-color: #e60012;
  }
  .tab-layout[data-layout-sp="selectbox"] .tab_navi {
    display: none;
  }
  .tab-layout[data-layout-sp="selectbox"] .tab_navi_2 {
    position: relative;
    width: 100%;
    background-color: #fff;
  }
  .tab-layout[data-layout-sp="selectbox"] .tab_navi_2::after {
    position: absolute;
    top: 50%;
    right: 10px;
    width: 0;
    height: 0;
    margin-top: -3px;
    border-width: 10px 7px;
    border-style: solid;
    border-color: #888 transparent transparent transparent;
    content: "";
  }
  .tab-layout[data-layout-sp="selectbox"] .tab_selectbox {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 45px;
    margin: -2px 0 0 0;
    padding: 10px 35px 10px 15px;
    border: 1px solid #ccc;
    background: none !important;
    text-transform: none;
    cursor: pointer;
  }
  .tab-layout[data-layout-sp="selectbox"] .tab_selectbox::-ms-expand {
    display: none;
  }
  .tab-layout &gt; .tab_detail {
    padding-top: 20px;
  }
  .tab-layout.js-tabs &gt; .tab_detail {
    display: none;
  }
  .tab-layout.has-anchor &gt; .tab_detail {
    padding-top: 0;
  }
  .tab-layout &gt; .tab_detail &gt; *:first-child,
  .tab-layout &gt; .tab_detail &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  /* v2 */
  .tab-layout-v2 {
    margin-top: 2.5em;
  }
  .tab-layout-v2 &gt; .tab_navi {
  }
  .tab-layout-v2 &gt; .tab_navi &gt; .tab_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .tab-layout-v2 .tab_list &gt; li {
    display: -webkit-flex;
    display: flex;
    margin-top: 1.5em;
    margin-left: 15px;
  }
  .tab-layout-v2[data-count-sp="2"] &gt; .tab_navi &gt; .tab_list &gt; li { width: calc((100% - 15px) / 2); }
  .tab-layout-v2[data-count-sp="3"] &gt; .tab_navi &gt; .tab_list &gt; li { width: calc((100% - 30px) / 3); }
  .tab-layout-v2[data-count-sp="4"] &gt; .tab_navi &gt; .tab_list &gt; li { width: calc((100% - 45px) / 4); }
  .tab-layout-v2[data-count-sp="2"] &gt; .tab_navi &gt; .tab_list &gt; li:nth-child(-n+2),
  .tab-layout-v2[data-count-sp="3"] &gt; .tab_navi &gt; .tab_list &gt; li:nth-child(-n+3),
  .tab-layout-v2[data-count-sp="4"] &gt; .tab_navi &gt; .tab_list &gt; li:nth-child(-n+4) {
    margin-top: 0;
  }
  .tab-layout-v2[data-count-sp="2"] &gt; .tab_navi &gt; .tab_list &gt; li:nth-child(2n+1),
  .tab-layout-v2[data-count-sp="3"] &gt; .tab_navi &gt; .tab_list &gt; li:nth-child(3n+1),
  .tab-layout-v2[data-count-sp="4"] &gt; .tab_navi &gt; .tab_list &gt; li:nth-child(4n+1) {
    margin-left: 0;
  }
  .tab-layout-v2 &gt; .tab_navi &gt; .tab_list &gt; li &gt; a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 100%;
    padding: 0 0 10px 0;
    line-height: 1.25;
    text-decoration: none;
    text-align: center;
  }
  .tab-layout-v2 &gt; .tab_navi &gt; .tab_list &gt; li &gt; a::before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #666;
    content: "";
  }
  .tab-layout-v2 &gt; .tab_navi &gt; .tab_list &gt; li:not(.is-current) &gt; a::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    background-color: #e60012;
    content: "";
  }
  .tab-layout-v2 &gt; .tab_navi &gt; .tab_list &gt; li.is-current &gt; a {
    color: #e60012;
    font-weight: 700;
  }
  .tab-layout-v2 &gt; .tab_navi &gt; .tab_list &gt; li.is-current &gt; a::before {
    background-color: #e60012;
  }
  .tab-layout-v2 &gt; .tab_detail {
    padding-top: 20px;
  }
  .tab-layout.js-tabs &gt; .tab_detail {
    display: none;
  }
  .tab-layout-v2 &gt; .tab_detail &gt; *:first-child,
  .tab-layout-v2 &gt; .tab_detail &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ------------------------------------------------------
   * Component &gt;&gt;&gt; Navi
  ------------------------------------------------------ */
  /* ----- navi-anchor ----- */
  .navi-anchor {
    margin: 1em -15px;
    background-color: #f7f7fa;
  }
  .navi-anchor .navi_inner {
    padding: 15px;
  }
  .navi-anchor .navi_inner &gt; li {
    display: -webkit-flex;
    display: flex;
  }
  .navi-anchor .navi_inner &gt; li &gt; a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 100%;
    padding: 10px 30px;
    border: 1px solid #dfdfe3;
    background-color: #fff;
    text-decoration: none;
    text-align: center;
  }
  .navi-anchor .navi_inner &gt; li &gt; a.is-nolink {
    color: #333;
    text-decoration: none;
    pointer-events: none;
    cursor: default;
  }
  .navi-anchor .navi_inner &gt; li &gt; a::before {
    position: absolute;
    bottom: 50%;
    right: 10px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-bottom: 1px solid #e60012;
    border-left: 1px solid #e60012;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    content: "";
  }
  .navi-anchor .navi_inner &gt; li &gt; a.is-nolink::before {
    display: none !important;
  }
  .navi-anchor .navi_inner &gt; li[class*="type-philosophy"] &gt; a::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 8px;
    width: 19px;
    height: 14px;
    margin: -7px 0 0 0;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 19px auto;
    content: "";
  }
  .navi-anchor .navi_inner &gt; li.type-philosophy1 &gt; a::after { background-image: url(../../about/philosophy/img/philosophy_ic01.png); }
  .navi-anchor .navi_inner &gt; li.type-philosophy2 &gt; a::after { background-image: url(../../about/philosophy/img/philosophy_ic02.png); }
  .navi-anchor .navi_inner &gt; li.type-philosophy3 &gt; a::after { background-image: url(../../about/philosophy/img/philosophy_ic03.png); }
  .navi-anchor .navi_inner &gt; li.type-philosophy4 &gt; a::after { background-image: url(../../about/philosophy/img/philosophy_ic04.png); }
  .navi-anchor .navi_inner &gt; li.type-philosophy5 &gt; a::after { background-image: url(../../about/philosophy/img/philosophy_ic05.png); }
  .navi-anchor .navi_inner &gt; li &gt; a .navi_label {
    display: inline-block;
  }
  
  /* ----- navi-local ----- */
  .navi-local {
    margin-top: 2.5em;
    padding: 20px 10px;
    background-color: #f7f7fa;
  }
  .navi-local .navi_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .navi-local .navi_list &gt; li {
    width: calc((100% - 15px) / 2);
    margin-top: 1em;
    margin-left: 15px;
  }
  .navi-local .navi_list &gt; li:nth-child(-n+2) {
    margin-top: 0;
  }
  .navi-local .navi_list &gt; li:nth-child(2n+1) {
    margin-left: 0;
  }
  .navi-local .navi_list &gt; li &gt; a {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: center;
    align-items: center;
  }
  .navi-local .navi_list &gt; li &gt; a .navi_icon {
    margin-right: 10px;
  }
  .navi-local .navi_list &gt; li &gt; a .navi_icon img {
    width: 40px;
    height: 40px;
  }
  .navi-local .navi_list &gt; li &gt; a .navi_label {
    -webkit-flex: 1;
    flex: 1;
    position: relative;
    padding-right: 15px;
  }
  .navi-local .navi_list &gt; li &gt; a .navi_label::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 4px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  /* v2 */
  .navi-local-v2 {
    margin-top: 2.5em;
  }
  .navi-local-v2 .navi_list &gt; li.is-current &gt; a {
    color: #333;
    font-weight: 700;
    text-decoration: none;
    cursor: default;
  }
  .navi-local-v2 .navi_list &gt; li:not(.is-current) &gt; a::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 4px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 8px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  
  /* ------------------------------------------------------
   * Component &gt;&gt;&gt; Index
  ------------------------------------------------------ */
  [class*="index-layout"] .index_caption &gt; *:first-child,
  [class*="index-layout"] .index_caption &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- index-layout ----- */
  .index-layout {
    text-align: left;
  }
  .index-layout &gt; .block {
    border: 1px solid #dfdfe3;
    background-color: #fff;
    text-decoration: none;
  }
  .index-layout &gt; .block .index_image {
    text-align: center;
  }
  .index-layout &gt; .block .index_caption {
    position: relative;
    padding: 7px 20px 7px 15px;
    text-align: center;
  }
  .index-layout &gt; .block .index_caption &gt; *:first-child,
  .index-layout &gt; .block .index_caption &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout &gt; a.block .index_caption::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 7px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout &gt; a.block[class*="a-"] .index_caption::after {
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout &gt; a.block.a-pdf .index_caption::after {
    margin-top: -7px;
  }
  .index-layout &gt; .block .index_title {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: center;
    align-items: center;
    font-size: 1.5rem;
    font-weight: 500;
    text-align: left;
  }
  .index-layout &gt; .block .index_title .index_title_list {
  }
  .index-layout &gt; .block .index_title .index_title_list &gt; .index_title_item {
    margin-top: .75em;
    font-size: 1.4rem;
  }
  .index-layout &gt; .block .index_title .index_title_list &gt; .index_title_item:nth-child(-n+1) {
    margin-top: 0;
  }
  .index-layout &gt; .block .index_title .index_title_list &gt; .index_title_item &gt; a::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 4px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 8px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout &gt; .block .index_title .index_title_list &gt; .index_title_item &gt; a[class*="a-"]::after {
    top: -1px;
    right: 0;
    margin: 0 0 0 6px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout &gt; .block .index_image_2 {
    position: relative;
    text-align: center;
  }
  .index-layout &gt; .block .index_image_2 .index_title_2 {
    position: absolute;
    font-size: 1.5rem;
    line-height: 1.1;
  }
  .index-layout &gt; .block .index_image_2 .index_title_2.type-group-japan {
    bottom: 13.6%;
    left: 8.28%;
    color: #fff;
  }
  /* v2 */
  .index-layout-v2 {
    text-align: left;
  }
  .index-layout-v2 &gt; .block {
    text-decoration: none;
  }
  .index-layout-v2 &gt; .block .index_image {
    position: relative;
    text-align: center;
  }
  .index-layout-v2 &gt; .block .index_image::before {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    margin: -21px 0 0 -32px;
  }
  .index-layout-v2 &gt; .block .index_image::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 3;
    width: 0;
    height: 0;
    margin: -9px 0 0 -7px;
    border-width: 9px 16px;
    border-style: solid;
    border-color: transparent transparent transparent #fff;
    content: "";
  }
  .index-layout-v2 &gt; .block .index_caption {
    margin-top: 1em;
  }
  .index-layout-v2 &gt; .block .index_title {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.25;
  }
  .index-layout-v2 &gt; .block .index_description {
    margin-top: .5em;
  }
  .index-layout-v2 .link-button {
    margin-top: 1em;
  }
  /* v3 */
  .index-layout-v3 {
    text-align: left;
  }
  .index-layout-v3 &gt; .block {
    text-decoration: none;
  }
  .index-layout-v3 &gt; .block .index_image {
    float: left;
    width: 106px;
    margin-right: 15px;
  }
  .index-layout-v3 &gt; .block .index_caption {
    overflow: hidden;
  }
  .index-layout-v3 &gt; .block .index_caption &gt; *:first-child,
  .index-layout-v3 &gt; .block .index_caption &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout-v3 &gt; .block .index_title {
    font-size: 1.6rem;
  }
  .index-layout-v3 &gt; a.block .index_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 4px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 8px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v3 &gt; a.block[class*="a-"] .index_title::after {
    top: -1px;
    right: 0;
    margin: 0 0 0 6px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout-v3 &gt; .block .index_description {
    margin-top: .5em;
  }
  /* v4 */
  .index-layout-v4 {
    text-align: left;
  }
  .index-layout-v4 &gt; .block {
    padding: 12px 0;
    border-top: 1px solid #dfdfe3;
    border-bottom: 1px solid #dfdfe3;
    background-color: #fff;
    text-decoration: none;
  }
  .index-layout-v4 &gt; .block .index_caption {
  }
  .index-layout-v4 &gt; .block .index_caption &gt; *:first-child,
  .index-layout-v4 &gt; .block .index_caption &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout-v4 &gt; .block .index_title {
    font-size: 1.6rem;
  }
  .index-layout-v4 &gt; a.block .index_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 4px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 8px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v4 &gt; a.block[class*="a-"] .index_title::after {
    top: -1px;
    right: 0;
    margin: 0 0 0 6px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout-v4 &gt; .block .index_description {
    margin-top: .75em;
  }
  /* v5 */
  .index-layout-v5 {
    text-align: left;
  }
  .index-layout-v5 &gt; .block {
    text-decoration: none;
  }
  .index-layout-v5 &gt; .block .index_image {
    text-align: center;
  }
  .index-layout-v5 &gt; .block .index_caption {
    margin-top: .5em;
  }
  .index-layout-v5 &gt; .block .index_caption &gt; *:first-child,
  .index-layout-v5 &gt; .block .index_caption &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout-v5 &gt; .block .index_title {
    font-weight: 700;
    line-height: 1.3;
  }
  .index-layout-v5 &gt; a.block .index_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 4px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 8px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v5 &gt; a.block[class*="a-"] .index_title::after {
    top: -1px;
    right: 0;
    margin: 0 0 0 6px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  /* v6 */
  .index-layout-v6 {
    text-align: left;
  }
  .index-layout-v6 &gt; .block {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: center;
    align-items: center;
    padding: 20px 0;
    border-top: 1px solid #dfdfe3;
    border-bottom: 1px solid #dfdfe3;
    text-decoration: none;
  }
  .index-layout-v6 &gt; .block .index_image {
    width: 105px;
    margin-right: 15px;
  }
  .index-layout-v6 &gt; .block .index_caption {
    -webkit-flex: 1;
    flex: 1;
    position: relative;
  }
  .index-layout-v6 &gt; a.block .index_caption {
    padding-right: 30px;
  }
  .index-layout-v6 &gt; a.block .index_caption::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 10px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v6 &gt; a.block[class*="a-"] .index_caption::after {
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout-v6 &gt; a.block.a-pdf .index_caption::after {
    right: 7px;
    margin-top: -7px;
  }
  .index-layout-v6 &gt; .block .index_caption &gt; *:first-child,
  .index-layout-v6 &gt; .block .index_caption &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout-v6 &gt; .block .index_title {
    font-weight: 700;
    line-height: 1.3;
  }
  /* v7 */
  .index-layout-v7 {
    text-align: left;
  }
  .index-layout-v7 &gt; .block {
    padding: 15px 0;
    border-top: 1px solid #dfdfe3;
    border-bottom: 1px solid #dfdfe3;
    background-color: #fff;
    text-decoration: none;
  }
  .index-layout-v7 &gt; .block .index_caption {
  }
  .index-layout-v7 &gt; .block .index_caption &gt; *:first-child,
  .index-layout-v7 &gt; .block .index_caption &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout-v7 &gt; .block .index_title {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.25;
  }
  .index-layout-v7 &gt; a.block .index_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 4px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 8px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v7 &gt; a.block[class*="a-"] .index_title::after {
    top: -1px;
    right: 0;
    margin: 0 0 0 6px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout-v7 &gt; .block .index_description {
    margin-top: .5em;
  }
  /* v8 */
  .index-layout-v8 {
    text-align: left;
  }
  .index-layout-v8 &gt; .block {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: center;
    align-items: center;
    padding: 20px 0;
    border-top: 1px solid #dfdfe3;
    border-bottom: 1px solid #dfdfe3;
    text-decoration: none;
  }
  .index-layout-v8 &gt; .block .index_image {
    width: 105px;
    margin-right: 15px;
  }
  .index-layout-v8 &gt; .block .index_caption {
    -webkit-flex: 1;
    flex: 1;
    position: relative;
  }
  .index-layout-v8 &gt; a.block .index_caption {
    padding-right: 30px;
  }
  .index-layout-v8 &gt; a.block .index_caption::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 10px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v8 &gt; a.block[class*="a-"] .index_caption::after {
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout-v8 &gt; a.block.a-pdf .index_caption::after {
    right: 7px;
    margin-top: -7px;
  }
  .index-layout-v8 &gt; .block .index_caption &gt; *:first-child,
  .index-layout-v8 &gt; .block .index_caption &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout-v8 &gt; .block .index_title {
    font-weight: 700;
    line-height: 1.3;
  }
  /* v9 */
  .index-layout-v9 {
    text-align: left;
  }
  .index-layout-v9 &gt; .index_heading &gt; .block {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    border: 1px solid #dfdfe3;
    background-color: #fff;
    text-decoration: none;
  }
  .index-layout-v9 &gt; .index_heading &gt; .block .index_image {
    width: 43.47%;
  }
  .index-layout-v9 &gt; .index_heading &gt; .block .index_image img {
    width: 100%;
  }
  .index-layout-v9 &gt; .index_heading &gt; .block .index_caption {
    -webkit-flex: 1;
    flex: 1;
    position: relative;
    padding: 5px 25px 5px 20px;
  }
  .index-layout-v9 &gt; .index_heading &gt; a.block .index_caption::before {
    position: absolute;
    top: 50%;
    right: 10px;
    width: 10px;
    height: 10px;
    margin-top: -5px;
    margin-right: 2px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v9 &gt; .index_heading &gt; .block .index_caption .index_caption_inner {
  }
  .index-layout-v9 &gt; .index_heading &gt; .block .index_title {
    width: 100%;
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.2;
  }
  .index-layout-v9 &gt; .index_heading &gt; .block .index_title .is-smaller {
    font-size: 1.3rem;
  }
  .index-layout-v9 &gt; .index_links {
    background-color: #fff;
  }
  .index-layout-v9 &gt; .index_links &gt; li {
    border-bottom: 1px solid #dfdfe3;
  }
  .index-layout-v9 &gt; .index_links &gt; li &gt; a,
  .index-layout-v9 &gt; .index_links &gt; li &gt; .is-nolink {
    display: block;
    position: relative;
    padding: 12px 27px 12px 15px;
    text-decoration: none;
  }
  .index-layout-v9 &gt; .index_links &gt; li &gt; a::before {
    position: absolute;
    top: 50%;
    right: 10px;
    width: 10px;
    height: 10px;
    margin-top: -5px;
    margin-right: 2px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v9 &gt; .index_links &gt; li &gt; a[class*="a-"]::before {
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout-v9 &gt; .index_links &gt; li &gt; a.a-pdf::before {
    margin-top: -7px;
  }
  
  /* ----- products-index-layout ----- */
  .products-index-layout {
    margin: 1.5em -15px 0;
    border-top: 1px solid #dfdfe3;
   /* border-bottom: 1px solid #dfdfe3;*/
  }
  .category .products-index-layout {
    margin: 1.5em 0px 0;  
  }
  .products-index-layout + .products-index-layout {
    margin-top: -1px;
  }
  .products-index-layout .index_heading {
    position: relative;
    padding: 12px 45px 12px 15px;
    /*background-color: #f7f7fa;*/
  }
  .contactnr .ditu {
    float: left;
    width: 100% !important;
}
.contactnr .r { 
    margin-left: 0px !important;
}
  .products-index-layout .index_heading .index_title {
    font-weight: 700;
  }
  .products-index-layout .index_heading .index_title a::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 4px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 8px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .products-index-layout .index_heading .index_title a[class*="a-"]::after {
    right: 0;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .products-index-layout .index_heading .index_toggle {
    position: absolute;
    top: 50%;
    right: 15px;
    margin: -10px 0 0 0; 
    position: absolute;
    top: 50%;
    right: 14px; 
    border: 2px solid #e60012;
    padding: 0px 20px 10px;
    border-radius: 10px;
  }
  .products-index-layout .index_heading .index_toggle .index_toggle_trigger {
    position: relative;
    width: 90px;
    height: 22px;
    cursor: pointer;
    display: inline-block;
    top: 5px;
  }
  .addcas {
    display: inline-block;
    color: #e60012;
}
  .products-index-layout .index_heading .index_toggle .index_toggle_trigger::before,
  .products-index-layout .index_heading .index_toggle .index_toggle_trigger::after {
 
    margin: 0 0 0 -9px;
    background-color: #e60012;
    content: "";
        width: 19px;
    height: 1px;
    margin: 0 0 0 -9px;
    background-color: #e60012;
    content: "";
    position: absolute;
    top: 35%;
    left: 95%;
    width: 19px;
    height: 1px;
    margin: 2px 0 0 -10px;
    background-color: #e60012;
  }
  .products-index-layout .index_heading .index_toggle .index_toggle_trigger::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .products-index-layout .index_heading .index_toggle .index_toggle_trigger.is-active::before {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .products-index-layout .index_content {
    padding: 18px 15px;
  }
  .products-index-layout .index_content &gt; *:first-child,
  .products-index-layout .index_content &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .products-index-layout .index_content .index_sgds {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 1em 0 -10px 0;
  }
  .products-index-layout .index_content .index_sgds &gt; li {
    margin: 0 0 10px 0;
    padding: 0 5px;
  }
  .products-index-layout .index_content .index_links {
    margin: 1em 0 0 0;
  }
  .products-index-layout .index_content .index_links &gt; li + li {
    margin-top: 1.25em;
  }
  .products-index-layout .index_content .index_links &gt; li &gt; *:first-child,
  .products-index-layout .index_content .index_links &gt; li &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .products-index-layout .column-media &gt; .column_detail:first-child {
    margin-top: 0;
  }
  
  /* ------------------------------------------------------
   * Component &gt;&gt;&gt; Other
  ------------------------------------------------------ */
  /* ----- article-information ----- */
  .article-information &gt; *:last-child {
    margin-bottom: 0 !important;
  }
  .article-information .article_time {
    margin: 1.5em 0;
    text-align: right;
  }
  .article-information .article_time + * {
    margin-top: 1.5em;
  }
  .article-information .article_wysiwyg {
    margin: 2em 0;
  }
  .article-information .article_wysiwyg &gt; *:first-child,
  .article-information .article_wysiwyg &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- article-news ----- */
  .article-news &gt; *:last-child {
    margin-bottom: 0 !important;
  }
  .article-news .article_time {
    margin: 1.5em 0;
    text-align: right;
  }
  .article-news .article_time + * {
    margin-top: 1.5em;
  }
  .article-information .article_wysiwyg {
    margin: 2em 0;
  }
  .article-information .article_wysiwyg &gt; *:first-child,
  .article-information .article_wysiwyg &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- news-compo ----- */
  .news-compo {
    margin-top: 2.5em;
    border-top: 1px solid #eee;
  }
  .news-compo .news_no_article {
    margin-top: 1em;
    text-align: center;
  }
  .news-compo .news_article {
    border-bottom: 1px solid #eee;
  }
  .news-compo .block {
    position: relative;
    padding: 15px 0;
    text-decoration: none;
    outline: none;
  }
  .news-compo a.block {
    padding-right: 24px;
  }
  .news-compo a.block::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 8px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .news-compo a.block[class*="a-"]::after {
    right: 5px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .news-compo a.block.a-pdf::after {
    right: 1px;
    margin-top: -7px;
  }
  .news-compo .news_detail {
  }
  .news-compo .news_property {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }
  .news-compo .news_date {
    display: inline-block;
    margin-right: 8px;
    font-size: 1.2rem;
    vertical-align: middle;
  }
  .news-compo .news_icon {
    display: -webkit-inline-box;
    display: inline-flex;
    vertical-align: middle;
  }
  .news-compo .news_icon .icon-news {
    position: relative;
    top: 0;
  }
  .news-compo .news_icon .icon-news:nth-of-type(n+2) {
    margin-left: .5em;
  }
  .news-compo .news_title {
    margin-top: .5em;
  }
  
  /* ----- news-select-wrap ----- */
  .news-select-wrap {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    align-items: center;
    padding-top: 15px;
  }
  .news-select-wrap + .news-compo {
    margin-top: 30px;
  }
  .news-select-wrap .news_select_pulldown {
    position: relative;
    width: 100%;
    margin-left: 1px;
  }
  .news-select-wrap .news_select_pulldown::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 15px;
    width: 10px;
    height: 10px;
    margin: -7px 0 0 0;
    border-right: 1.5px solid #ff2424;
    border-bottom: 1.5px solid #ff2424;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    cursor: pointer;
    pointer-events: none;
  }
  .news-select-wrap .news_select_year {
    width: 100%;
    padding: 11px 33px 11px 15px;
    border: 1px solid #dfdfe3;
    font-size: 1.4rem;
    font-weight: normal;
    cursor: pointer;
  }
  .news-select-wrap .news_select_year::-ms-expand {
    display: none;
  }
  .news-select-wrap .news_select_rss{
    display: none;
  }
  
  /* ----- dumap-compo ----- */
  .dumap-compo {
    margin-top: 2.5em;
    overflow-x: auto;
    padding-bottom: 8px;
  }
  .dumap-compo::-webkit-scrollbar {
    height: 12px;
  }
  .dumap-compo::-webkit-scrollbar-track {
    border-radius: 12px;
    background: #f1f1f1;
  }
  .dumap-compo::-webkit-scrollbar-thumb {
    border-radius: 12px;
    background: #888;
  }
  .dumap-compo .dumap_canvas {
    position: relative;
    width: 582px;
    height: 472px;
  }
  .dumap-compo .dumap_canvas iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  
  /* ----- banner-compo ----- */
  .banner-compo {
    margin-top: 2.5em;
  }
  .banner-compo &gt; *:first-child,
  .banner-compo &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .banner-compo .banner_list {
    margin-top: .75em;
  }
  /* v2 */
  .banner-compo-v2 {
    margin-top: 2em;
  }
  .banner-compo-v2 &gt; .block {
    background-color: #f7f7fa;
    text-decoration: none;
  }
  .banner-compo-v2 &gt; .block .banner_caption {
    padding: 15px 10px;
    text-align: center;
  }
  .banner-compo-v2 &gt; .block .banner_title {
    color: #e60012;
    font-size: 2.1rem;
  }
  .banner-compo-v2 &gt; .block .banner_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 4px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 8px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .banner-compo-v2 &gt; .block .banner_lead {
    margin-top: .5em;
  }
  .banner-compo-v2 &gt; .block .banner_image {
    text-align: center;
  }
  
  /* ----- slider-gallery-compo ----- */
  .slider-gallery-compo {
    margin-top: 2.5em;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos {
    position: relative;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .gallery_carousel_item img {
    margin: 0 auto;
    width: 100%;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-arrow {
    position: absolute;
    bottom: 5px;
    width: 10px;
    height: 10px;
    margin: 0;
    padding: 0;
    border: none;
    background: none;
    text-indent: -9999em;
    outline: none;
    cursor: pointer;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-prev {
    left: 50%;
    margin-left: -100px;
    border-top: 1px solid #696969;
    border-left: 1px solid #696969;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-next {
    right: 50%;
    margin-right: -100px;
    border-right: 1px solid #696969;
    border-bottom: 1px solid #696969;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos.is-maximum .slick-arrow.slick-prev {
    left: 3px;
    margin-left: 0;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos.is-maximum .slick-arrow.slick-next {
    right: 3px;
    margin-right: 0;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    margin-top: 1em;
    padding: 0 15px;
    text-align: center;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots &gt; li {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    height: 20px;
    padding: 0 15px;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots &gt; li button {
    width: 14px;
    height: 14px;
    margin: 0;
    padding: 0;
    border: none;
    background-color: #ccc;
    border-radius: 50%;
    text-indent: -9999em;
    outline: none;
    cursor: pointer;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots &gt; li.slick-active button {
    background-color: #e60012;
  }
  /* v2 */
  .slider-gallery-compo-v2 {
    margin-top: 2.5em;
  }
  .slider-gallery-compo-v2 .gallery_carousel {
    max-width: 300px;
    margin: 0 auto;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos {
    position: relative;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .gallery_carousel_item img {
    margin: 0 auto;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
    position: absolute;
    top: 85px;
    z-index: 2;
    margin: 0;
    padding: 0;
    border: none;
    background-color: transparent;
    text-indent: -9999em;
    outline: none;
    cursor: pointer;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-prev {
    left: 10px;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-next {
    right: 10px;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-top: .5em;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots &gt; li {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: calc((100% - 18px) / 3);
    margin-top: .5em;
    margin-left: 9px;
    opacity: .5;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots &gt; li:nth-child(-n+3) {
    margin-top: 0;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots &gt; li:nth-child(3n+1) {
    margin-left: 0;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots &gt; li.slick-active {
    opacity: 1;
  }
  
  /* ----- contact-compo ----- */
  .contact-compo {
    margin-top: 2.5em;
  }
  .contact-compo .contact_box {
    border: 1px solid #dfdfe3;
  }
  .contact-compo .contact_box &gt; .contact_heading {
    padding: 12px 10px;
    background-color: #f7f7fa;
    text-align: center;
  }
  .contact-compo .contact_box &gt; .contact_heading .contact_title {
    font-weight: 700;
  }
  .contact-compo .contact_box &gt; .contact_content {
    padding: 15px 10px;
    text-align: center;
    vertical-align: middle;
  }
  .contact-compo .contact_box &gt; .contact_content &gt; *:first-child,
  .contact-compo .contact_box &gt; .contact_content &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .contact-compo .contact_box &gt; .contact_content .link-button-v2 a &gt; .link_label {
    display: block;
  }
  
  /* ----- group-lead-compo ----- */
  .group-lead-compo {
    margin: 2.5em -15px 0;
    padding: 20px 15px 25px;
    background-color: #f7f7fa;
  }
  .group-lead-compo &gt; *:first-child,
  .group-lead-compo &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .group-lead-compo .link-button-v3 {
    margin-top: 1em;
  }
  .group-lead-compo .link-button-v3 a &gt; .link_label {
    display: block;
  }
  
  /* ----- related-compo ----- */
  .related-compo {
    margin-top: 2.5em;
  }
  .related-compo .related_box {
    padding: 15px;
    border: 1px solid #dfdfe3;
    background-color: #fff;
  }
  .related-compo .related_box &gt; *:first-child,
  .related-compo .related_box &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .related-compo .related_box .related_title {
    font-weight: 700;
    line-height: 1.2;
  }
  /* v2 */
  .related-compo-v2 {
    margin: 2.5em -15px 0;
    padding: 18px 15px;
    background-color: #f7f7fa;
  }
  .related-compo-v2 .related_inner {
  }
  .related-compo-v2 .related_inner &gt; *:first-child,
  .related-compo-v2 .related_inner &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .related-compo-v2 .related_inner .related_title {
    font-size: 1.8rem;
  }
  .related-compo-v2 .related_inner .related_title + * {
    margin-top: 1em;
  }
  .related-compo-v2 .related_inner .related_links_2 &gt; li {
    margin-top: .5em;
  }
  .related-compo-v2 .related_inner .related_links_2 .block {
    text-decoration: none;
  }
  .related-compo-v2 .related_inner .related_links_2 .block .related_links_image {
    display: none;
  }
  .related-compo-v2 .related_inner .related_links_2 .block .related_links_title {
  }
  .related-compo-v2 .related_inner .related_links_2 a.block .related_links_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 4px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 8px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .related-compo-v2 .related_inner .related_links_2 a.block[class*="a-"] .related_links_title::after {
    top: -1px;
    right: 0;
    margin: 0 0 0 6px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  
  /* ----- video-iframe-compo ----- */
  .video-iframe-compo {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .video-iframe-compo iframe {
    width: 720px !important;
    height: 400px;
    border: none;
    overflow: auto;
  }
  
  /* ----- stock-iframe-compo ----- */
  .stock-iframe-compo {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .stock-iframe-compo iframe {
    width: 100% !important;
    height: 800px;
    border: none;
    overflow: auto;
  }
  
  /* ----- grade-iframe-compo ----- */
  .grade-iframe-compo {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .grade-iframe-compo iframe {
    width: 750px !important;
    border: none;
    overflow: auto;
  }
  
  /* ----- yellowcard-iframe-compo ----- */
  .yellowcard-iframe-compo {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .yellowcard-iframe-compo iframe {
    width: 750px !important;
    border: none;
    overflow: auto;
  }
  
  /* ----- about-layout ----- */
  .about-layout {
    margin-top: 2.14em;
  }
  .about-layout .banner_block {
    display: block;
    background-color: #f7f7fa;
    text-decoration: none;
  }
  .about-layout .banner_caption {
    padding: 15px 30px;
    text-align: center;
  }
  .about-layout .banner_title {
    position: relative;
    padding: 0 14px 0 0;
    display: inline-block;
    color: #e60012;
    font-size: 2.4rem;
    line-height: 1.2;
  }
  .about-layout .banner_title::after {
    position: absolute;
    top: 50%;
    right: 4px;
    width: 10px;
    height: 10px;
    margin: -3px 0 0 0;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .about-layout .banner_title .banner_title_sub {
    display: block;
    font-size: 1.6rem;
  }
  .about-layout .banner_lead {
    margin-top: .5em;
  }
  .about-layout .banner_lead &gt; p {
    display: inline-block;
    text-align: left;
  }
  .about-layout .banner_image {
    text-align: center;
  }
  
  /* ----- officer-layout ----- */
  .officer-layout {
    margin: 3rem 0 0 !important;
  }
  .officer-layout + .officer-layout,
  .officer-layout .officer_column &gt; .column_item {
    margin-top: 1rem !important;
  }
  .officer-layout .officer_column &gt; .column_item {
    border: 1px solid #dfdfe3;
  }
  .officer-layout .officer_column &gt; .column_item:first-child {
    margin-top: 0 !important;
  }
  .officer-layout .officer_column_2 {
    position: relative;
    display: flex;
    align-items: center;
  }
  .officer-layout .officer_column_2::before,
  .officer-layout .officer_column_2::after {
    position: absolute;
    top: 50%;
    right: 14px;
    background-color: #e60012;
    content: "";
  }
  .officer-layout .officer_column_2::before {
    width: 19px;
    height: 1px;
  }
  .officer-layout .officer_column_2::after {
    width: 1px;
    height: 19px;
    margin-top: -9px;
    margin-right: 9px;
  }
  .officer-layout .officer_column_2 &gt; .column_image {
    white-space: nowrap;
  }
  .officer-layout .officer_column_2 &gt; .column_text {
    flex: 1;
    padding: 5px 47px 5px 15px;
  }
  .officer-layout .officer_column_3 {
    padding: 15px;
  }
  .officer-layout .officer_column_3 &gt; .column_image {
    display: none;
  }
  .officer-layout .officer_text &gt; dt {
    font-size: 1.3rem;
  }
  .officer-layout .officer_text &gt; dd {
    margin: .5em 0 0;
  }
  .officer-layout .officer_text &gt; dd &gt; .text_name {
    font-size: 1.8rem;
    line-height: 1;
  }
  .officer-layout .officer_text &gt; dd &gt; .text_kana {
    display: block;
    font-size: 1.0rem;
  }
  .officer-layout .officer_button {
    display: none;
  }
  .officer-layout .officer_image img {
    max-width: 105px;
  }
  .officer-layout .officer_table {
    width: 100%;
    border-top: 1px solid #dfdfe3;
  }
  .officer-layout .officer_table &gt; * &gt; tr &gt; * {
    padding: 10px 0;
    border-bottom: 1px solid #dfdfe3;
    text-align: left;
    vertical-align: top;
  }
  .officer-layout .officer_table &gt; tbody &gt; tr &gt; th {
    font-weight: normal;
    white-space: nowrap;
  }
  .officer-layout .officer_table &gt; tbody &gt; tr &gt; td {
    width: 99%;
    padding-left: 15px;
  }
  .officer-layout .officer_column &gt; .column_item.is-active {
    background-color: #f7f7fa;
  }
  .officer-layout .officer_column &gt; .column_item.is-active .officer_column_2::after {
    opacity: 0;
  }
  /* v2 */
  .officer-layout-v2 {
    margin: 3em 0 0 !important;
  }
  .officer-layout-v2 table.officer_table {
    width: 100%;
    border-top: 1px solid #dfdfe3;
  }
  .officer-layout-v2 table.officer_table &gt; * &gt; tr &gt; * {
    padding: 10px 15px;
    border-right: 1px solid #dfdfe3;
    border-bottom: 1px solid #dfdfe3;
    vertical-align: middle;
    text-align: left;
  }
  .officer-layout-v2 table.officer_table &gt; * &gt; tr &gt; *:last-child {
    border-right: none;
  }
  .officer-layout-v2 table.officer_table &gt; tbody &gt; tr &gt; th {
    width: 34.78%;
    background-color: #f7f7fa;
    font-weight: 700;
  }
  .officer-layout-v2 table.officer_table &gt; tbody &gt; tr &gt; th.cell-style1 {
    padding-left: 40px;
  }
  .officer-layout-v2 table.officer_table &gt; tbody &gt; tr &gt; th.cell-style2 {
    border-bottom-color: #f7f7fa;
  }
  .officer-layout-v2 table.officer_table &gt; tbody &gt; tr &gt; td.cell-style3 {
    border-bottom-color: #fff;
  }
  .officer-layout-v2 table.officer_table &gt; tbody &gt; tr &gt; th.cell-style2,
  .officer-layout-v2 table.officer_table &gt; tbody &gt; tr &gt; td.cell-style3 {
    padding-bottom: 0;
  }
  .officer-layout-v2 table.officer_table &gt; tbody &gt; tr &gt; th.cell-style4 {
    vertical-align: top;
  }
  
  /* ----- location-compo ----- */
  .location-compo {
    margin-top: 2.5em;
  }
  .location-compo + .location-compo {
    margin-top: 0;
  }
  .location-compo .location_caption {
  }
  .location-compo .location_caption .location_company {
    font-weight: 700;
    line-height: 1.25;
  }
  .location-compo + .location-compo .location_caption .location_company {
    margin-top: 1.5em;
  }
  .location-compo .location_caption .location_company &gt; a::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 4px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 8px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .location-compo .location_caption .location_company &gt; a[class*="a-"]::after {
    top: -1px;
    right: 0;
    margin: 0 0 0 6px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .location-compo .location_caption .location_description {
    margin-top: .25em;
    line-height: 1.5;
  }
  .location-compo .location_table {
    margin: 0 -15px;
  }
  .location-compo .location_caption + .location_table {
    margin-top: .75em;
  }
  .location-compo .location_table &gt; .location_table_head {
    position: relative;
    padding: 15px 45px 15px 15px;
    border-top: 1px solid #dfdfe3;
    background-color: #f7f7fa;
  }
  .location-compo .location_table &gt; .location_table_head::before,
  .location-compo .location_table &gt; .location_table_head::after {
    position: absolute;
    top: 50%;
    right: 15px;
    width: 19px;
    height: 1px;
    background-color: #e60012;
    content: "";
  }
  .location-compo .location_table &gt; .location_table_head::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .location-compo .location_table &gt; .location_table_head.is-active::before {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .location-compo .location_table &gt; .location_table_data {
    padding: 12px 15px 15px;
    background-color: #fff;
  }
  .location-compo .location_table .location_title {
    font-weight: 700;
  }
  .location-compo .location_table .location_info + .location_info {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #dfdfe3;
  }
  .location-compo .location_table .location_info &gt; [class*="location_info_"] &gt; *:first-child,
  .location-compo .location_table .location_info &gt; [class*="location_info_"] &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .location-compo .location_table .location_info &gt; .location_info_place {
  }
  .location-compo .location_table .location_info &gt; .location_info_contact {
    margin-top: .75em;
  }
  .location-compo .location_table .location_name {
    font-weight: 700;
  }
  .location-compo .location_table .location_address {
    margin-top: .5em;
  }
  .location-compo .location_table .location_links {
    margin-top: .75em;
  }
  .location-compo .location_table .location_links &gt; li + li {
    margin-top: 1em;
  }
  .location-compo .location_table .location_links &gt; li &gt; a {
    display: block;
    position: relative;
    padding: 12px 35px; 
    border: 1px solid #dfdfe3;
    background-color: #fff;
    text-align: center;
    text-decoration: none;
  }
  .location-compo .location_table .location_links &gt; li &gt; a.a-map {
    display: inline-block;
    padding: 0 0 0 23px;
    border: none;
    text-align: left;
  }
  .location-compo .location_table .location_links &gt; li &gt; a.a-map::before {
    position: absolute;
    top: 0;
    left: 0;
  }
  .location-compo .location_table .location_links &gt; li &gt; a &gt; .location_links_label {
    display: inline-block;
  }
  .location-compo .location_table .location_links &gt; li &gt; a &gt; .location_links_label::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 18px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .location-compo .location_table .location_links &gt; li &gt; a[class*="a-"] &gt; .location_links_label::after {
    right: 15px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .location-compo .location_table .location_links &gt; li &gt; a.a-map &gt; .location_links_label::after {
    display: none;
  }
  .location-compo .location_table .location_tel a[href*="tel:"] {
    text-decoration: none;
  }
  
  /* ----- philosophy-compo ----- */
  .philosophy-compo {
    margin-top: 2.5em;
  }
  .philosophy-compo &gt; .philosophy_item {
    margin-top: 2em;
  }
  .philosophy-compo &gt; .philosophy_item:nth-child(-n+1) {
    margin-top: 0;
  }
  .philosophy-compo &gt; .philosophy_item &gt; *:first-child,
  .philosophy-compo &gt; .philosophy_item &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .philosophy-compo &gt; .philosophy_item .philosophy_heading {
    padding: 15px;
    border: 1px solid #e60012;
    background-color: #fff;
    text-align: center;
  }
  .philosophy-compo &gt; .philosophy_item .philosophy_heading &gt; *:first-child,
  .philosophy-compo &gt; .philosophy_item .philosophy_heading &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .philosophy-compo &gt; .philosophy_item .philosophy_statement {
    color: #e60012;
    font-size: 1.5rem;
  }
  .philosophy-compo &gt; .philosophy_item .philosophy_statement &gt; strong {
    font-weight: 500;
  }
  .philosophy-compo &gt; .philosophy_item .philosophy_statement_2 {
    margin-top: 1em;
    color: #e60012;
  }
  .philosophy-compo &gt; .philosophy_item .philosophy_statement_2 &gt; strong {
    font-weight: 500;
  }
  .philosophy-compo &gt; .philosophy_item .philosophy_detail {
    margin-top: 1em;
  }
  .philosophy-compo &gt; .philosophy_item .philosophy_detail &gt; *:first-child,
  .philosophy-compo &gt; .philosophy_item .philosophy_detail &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .philosophy-compo &gt; .philosophy_item .philosophy_detail [class*="list-order"] &gt; li &gt; .list_mark {
    font-weight: 400;
  }
  
  /* ----- products-layout ----- */
  .products-layout {
    margin: 10px 0 0;
  }
  .products-layout .products_link {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .products-layout .products_link &gt; li {
    display: flex;
    width: calc((100% - 15px) / 2);
    margin-top: 15px;
    box-sizing: border-box;
    background-color: #fff;
    border: 1px solid #dfdfe3;
  }
  .products-layout .products_link &gt; li:nth-child(-n+2) {
    margin-top: 0;
  }
  .products-layout .products_link &gt; li &gt; .products_block {
    display: flex;
    width: 100%;
  }
  .products-layout .products_link &gt; li &gt; a.products_block {
    position: relative;
  }
  .products-layout .products_link &gt; li &gt; a.products_block::before {
    content: "";
    position: absolute;
    right: 10px;
    top: 50%;
    width: 10px;
    height: 10px;
    margin-top: -4px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .products-layout .products_link &gt; li &gt; .products_block &gt; .products_icon,
  .products-layout .products_link &gt; li &gt; .products_block &gt; .products_label {
    display: flex;
    align-items: center;
  }
  .products-layout .products_link &gt; li &gt; .products_block &gt; .products_icon {
    justify-content: center;
    width: 60px;
    width: 36.36%;
    background-color: #f7f7fa;
  }
  .products-layout .products_link &gt; li &gt; .products_block &gt; .products_label {
    flex: 1;
    padding: 10px 25px 10px 10px;
    line-height: 1.2;
  }
  
  /* ----- products-search-layout ----- */
  .products-search-layout {
    margin: 2.15em -15px 0;
    border-bottom: 1px solid #dddddd;
  }
  .products-search-layout .search_heading {
    position: relative;
    padding: 15px 50px 15px 15px;
    background-color: #f7f7fa;
    border-top: 1px solid #dfdfe3;
    font-weight: 700;
    cursor: pointer;
  }
  .products-search-layout .search_heading::before,
  .products-search-layout .search_heading::after {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 20px;
    height: 1px;
    background-color: #e60012;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    content: "";
  }
  .products-search-layout .search_heading::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .products-search-layout .search_heading.is-active::before {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .products-search-layout .search_frame {
    padding: 10px 15px 20px;
  }
  .products-search-layout .search_frame &gt; *:first-child {
    margin-top: 0;
  }
  .products-search-layout .search_column {
    margin: 1em 0 0;
  }
  .products-search-layout .search_column &gt; * &gt; *:first-child {
    margin-top: 0;
  }
  .products-search-layout .search_column &gt; .column_link {
    margin: .5em 0 0;
  }
  .products-search-layout .search_column &gt; .column_link .link-text {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .products-search-layout .search_column &gt; .column_link .link-text &gt; li {
    width: calc((100% - 15px) / 2);
    margin-top: 10px;
  }
  .products-search-layout .search_column &gt; .column_link .link-text &gt; li:nth-child(-n+2) {
    margin-top: 0;
  }
  .products-search-layout .products-layout {
    margin-top: 1em;
  }
  .products-search-layout .products-layout .products_link &gt; li &gt; .products_block &gt; .products_icon {
    width: 45px;
  }
  .products-search-layout .products-layout .products_link &gt; li &gt; .products_block &gt; .products_label {
    font-size: 1.3rem;
  }
  /* v2 */
  .products-search-layout-v2 {
    margin: 1.5em 0 0;
  }
  .products-search-layout-v2 .search_text &gt; dt::after {
    content: "：";
  }
  .products-search-layout-v2 .search_text &gt; dd &gt; span {
    color: #e60012;
  }
  .products-search-layout-v2 .search_text_2 {
    margin: .5em 0 0;
  }
  .products-search-layout-v2 .search_text_2 &gt; span {
    font-size: 2.0rem;
    font-weight: 700;
  }
  .products-search-layout-v2 .search_text_2 &gt; span &gt; em {
    font-style: normal;
  }
  
  /* ----- innovation-list ----- */
  .innovation-list {
  }
  .innovation-list &gt; li {
    position: relative;
    margin-top: 25px;
    text-align: center;
  }
  .innovation-list &gt; li:nth-child(-n+1) {
    margin-top: 0;
  }
  .innovation-list &gt; li .is-highlight {
    color: #e60012;
    font-size: 114%;
    font-weight: 400;
  }
  .innovation-list &gt; li + li::before {
    position: absolute;
    top: -13px;
    left: 50%;
    width: 40px;
    height: 1px;
    margin: 0 0 0 -20px;
    background-color: #e0e0e0;
    content: "";
  }
  
  /* ----- library-item ----- */
  .library-item {
    margin-top: 0;
  }
  .library-item .library_item_heading {
    padding: 15px 20px 14px;
    border-top: 1px solid #dfdfe3;
    background-color: #f7f7fa;
  }
  .library-item .library_item_heading &gt; .accordion_label {
    display: block;
    position: relative;
    padding: 0 15px 0 0;
    font-size: 1.4rem;
    font-weight: 700;
    text-align: left;
  }
  .library-item .library_item_heading &gt; .accordion_label::before,
  .library-item .library_item_heading &gt; .accordion_label::after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 19px;
    height: 1px;
    background-color: #e60012;
    content: "";
  }
  .library-item .library_item_heading &gt; .accordion_label::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .library-item .library_item_heading.is-active &gt; .accordion_label::before {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .library-item .library_item_detail {
    padding: 10px 0 0 0;
    border: none;
    background-color: #fff;
  }
  .library-item .library_item_detail &gt; *:first-child,
  .library-item .library_item_detail &gt; *:first-child &gt; [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .library-item .library_table_column {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
    padding: 0 15px 20px;
    margin-right: -10px;
  }
  .library-item .library_table_column[data-count-sp="2"] .library_table_data {
    position: relative;
    width: calc(50% - 10px);
    padding: 14px 1em 15px;
    border: 1px solid #dfdfe3;
    text-align: center;
    margin: 10px 10px 0 0;
  }
  .library-item .library_table_column[data-count-sp="1"] .library_table_data {
    position: relative;
    width: 100%;
    padding: 14px 1em 15px;
    border: 1px solid #dfdfe3;
    text-align: center;
    margin: 10px 10px 0 0;
  }
  .library-item .library_table_column .library_table_data .data_title {
    display: inline-block;
    margin-bottom: 9px;
    font-size: 1.4rem;
    font-weight: 700;
  }
  .library-item .library_table_data a .data_icon{
    display: block;
    margin: 0 auto;
    text-indent:100%;
    white-space: nowrap;
    overflow: hidden;
  }
  
  /* ----- csr-index-compo ----- */
  .csr-index-compo {
  }
  .csr-index-compo &gt; .index_banner {
  }
  .csr-index-compo &gt; .index_banner &gt; .block {
    position: relative;
  }
  .csr-index-compo &gt; .index_banner.type-message &gt; .block {
    border: 1px solid #ddd;;
    background-color: #f3f3ec;
  }
  .csr-index-compo &gt; .index_banner.type-overview &gt; .block {
    padding: 15px;
    background-color: #f7f7fa;
  }
  .csr-index-compo &gt; .index_banner &gt; .block .index_heading {
    position: relative;
    z-index: 2;
  }
  .csr-index-compo &gt; .index_banner &gt; .block .index_heading::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 4px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 8px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .csr-index-compo &gt; .index_banner.type-message &gt; .block .index_image {
    position: absolute;
    right: 15px;
    bottom: 0;
  }
  .csr-index-compo &gt; .index_banner.type-message &gt; .block .index_image img {
    width: auto;
    height: 141px;
  }
  .csr-index-compo &gt; .index_banner.type-overview &gt; .block .index_image {
    margin-top: 1em;
    text-align: center;
  }
  .csr-index-compo &gt; .index_banner.type-overview &gt; .block .index_image img {
    width: 185px;
    height: auto;
  }
  .csr-index-compo &gt; .index_banner &gt; a.block:hover .index_heading {
    text-decoration: underline;
  }
  
  /* ----- csr-news-compo ----- */
  .csr-news-compo {
    margin-top: 2.5em;
  }
  .csr-news-compo .news_heading {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: baseline;
    align-items: baseline;
  }
  .csr-news-compo .news_heading &gt; .news_heading_title {
    -webkit-flex: 1;
    flex: 1;
    font-size: 1.8rem;
    line-height: 1;
  }
  .csr-news-compo .news_heading &gt; .news_heading_link {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-align-items: center;
    align-items: center;
    white-space: nowrap;
  }
  .csr-news-compo .news_heading &gt; .news_heading_link &gt; li {
    margin-left: 15px;
  }
  .csr-news-compo .news_heading &gt; .news_heading_link &gt; li &gt; a.a-rss::before {
    position: relative;
    top: -2px;
    margin: 0 6px 0 0;
  }
  .csr-news-compo .news_heading &gt; .news_heading_link &gt; li &gt; a.a-link::after {
    position: relative;
    top: -2px;
    right: 2px;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .csr-news-compo .news_latest .news-compo {
    margin-top: 1em;
  }
  
  /* ----- awards-compo ----- */
  .awards-compo {
    margin-top: 3em;
    overflow: hidden;
  }
  .awards-compo .awards_title a::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 4px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 8px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .awards-compo .awards_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    align-items: center;
    margin: .5em -25px 0 0;
    overflow: hidden;
  }
  .awards-compo .awards_list &gt; li {
    margin: .5em 25px 0 0;
  }
  .awards-compo .awards_list_2 &gt; li + li {
    margin-top: .5em;
  }
  
  /* ----- contact-layout ----- */
  .contact-layout {
    margin: 1.5em 0 0 !important;
  }
  .contact-layout .contact_button &gt; li {
    margin: 15px 0 0 0;
  }
  .contact-layout .contact_button &gt; li:first-child {
    margin-top: 0;
  }
  .contact-layout .contact_button &gt; li &gt; a {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    min-height: calc(3em + 25px * 2);
    padding: 25px 27px 25px 11px;
    box-sizing: border-box;
    background-color: #fff;
    border: 1px solid #dfdfe3;
    text-decoration: none;
  }
  .contact-layout .contact_button &gt; li &gt; a::before {
    position: absolute;
    top: 50%;
    right: 9px;
    width: 10px;
    height: 10px;
    margin-top: -5px;
    margin-right: 2px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .contact-layout .contact_button &gt; li &gt; a[class*="a-"]::before {
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .contact-layout .contact_button &gt; li &gt; a.a-pdf::before {
    margin-top: -7px;
  }
  .contact-layout .contact_button &gt; li &gt; a &gt; span.button_icon {
    width: 19.5%;
  }
  .contact-layout .contact_button &gt; li &gt; a &gt; span.button_label {
    flex: 1;
    padding: 0 0 0 10px;
  }
  
  /* ----- colorbox ----- */
  #colorbox.modal-movie {
    overflow: visible !important;
  }
  .modal-movie #cboxWrapper {
    overflow: visible !important;
  }
  .modal-movie #cboxLoadedContent {
    border: none;
  }
  .modal-movie #cboxClose {
    top: auto;
    right: 0;
    bottom: -29px;
    width: auto;
    height: auto;
    background: none;
    text-indent: -9999em;
    outline: none;
  }
  .modal-movie #cboxClose &gt; span {
    display: block;
    position: relative;
    width: 29px;
    height: 29px;
    background-color: #e60012;
  }
  .modal-movie #cboxClose &gt; span::before,
  .modal-movie #cboxClose &gt; span::after {
    position: absolute;
    top: 50%;
    left: 50%;
    display: inline-block;
    width: 12px;
    height: 1px;
    margin: 0 0 0 -6px;
    background-color: #fff;
    content: "";
  }
  .modal-movie #cboxClose &gt; span::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .modal-movie #cboxClose &gt; span::after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .column-media[data-layout-sp="row"]::after,
  .index-layout-v3 &gt; .block::after {
    display: block;
    clear: both;
    content: "";
  }
}


/* ======================================================
 * Media Queries
====================================================== */
@media only screen and (min-width: 320px) and (max-width: 767px) {
}
@media only screen and (max-width: 736px) {
}
@media only screen and (max-width: 667px) {
}
@media only screen and (max-width: 640px) {
}
@media only screen and (max-width: 568px) {
}
@media only screen and (max-width: 480px) {
}
@media only screen and (max-width: 414px) {
}
@media only screen and (max-width: 375px) {
}
@media only screen and (max-width: 360px) {
  .csr-index-compo &gt; .index_banner.type-message &gt; .block .index_image {
    right: 0;
  }
  .csr-index-compo &gt; .index_banner.type-message &gt; .block .index_image img {
    height: 130px;
  }
}
@media only screen and (max-width: 320px) {
}</pre></body></html>